我有以下问题:我得到一个传递的类的实例,并想知道此实例的类的名称.怎么弄这个?
我有一个二维(或更多)pandas DataFrame,如下所示:
>>> import pandas as pd
>>> df = pd.DataFrame([[0,1],[2,3],[4,5]], columns=['A', 'B'])
>>> df
A B
0 0 1
1 2 3
2 4 5
Run Code Online (Sandbox Code Playgroud)
现在假设我有一个numpy数组,np.array([2,3])并想检查是否有任何行df匹配我的数组的内容.答案显然应该是正确的,例如.np.array([1,2])应返回false,因为A列中没有1,B列中没有2.
当然这很容易,但现在看不到.
在我的应用程序中,我正在从网上下载一些图像(从我的服务器到精确),为了节省一些带宽,尤其是手机上的内存,我提供两种分辨率:480x320用于"旧"iPhone系列和带有视网膜显示屏的iPhone 4为960x640.现在,我需要能够在应用程序中检测它何时在支持视网膜屏幕的设备上运行.我怎么能这样做?
我一直在考虑使用下面的代码片段,它会返回一个特定的设备标识符,例如."iPhone3",然后我将限制检测到iPhone4,并需要为具有视网膜显示器的任何后续设备更新该代码.
size_t size;
// Set 'oldp' parameter to NULL to get the size of the data
// returned so we can allocate appropriate amount of space
sysctlbyname("hw.machine", NULL, &size, NULL, 0);
// Allocate the space to store name
char *name = malloc(size);
// Get the platform name
sysctlbyname("hw.machine", name, &size, NULL, 0);
// Place name into a string
NSString *machine = [NSString stringWithCString:name];
Run Code Online (Sandbox Code Playgroud)
有没有更好的选择(也许这是非常明显但我错过了它)?
在模型UIViewController中,我有以下loadView实现(一切都是以编程方式创建的):
- (void)loadView {
// Add Basic View
UIView *myView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 540, 620)];
myView.backgroundColor = [UIColor clearColor];
self.view = myView;
[myView release];
// Add NavigationBar
// Add a BG image
// Add Table
UITableView *tbView = [[UITableView alloc] initWithFrame:CGRectMake(30, 80, 480, 250) style:UITableViewStyleGrouped];
tbView.dataSource = self;
tbView.delegate = self;
tbView.scrollEnabled = NO;
tbView.backgroundColor = [UIColor clearColor];
[tbView reloadData];
[self.view addSubview:tbView];
[tbView release];
// some more code
}
Run Code Online (Sandbox Code Playgroud)
正如您所看到的,我将backgroundColor设置为clearColor,但是当我编译并运行代码时,我总是看到桌子后面的灰色背景:

我不明白我做错了什么(听起来很愚蠢,我知道),我曾经有过相同的代码而且工作得非常好.我正在使用iOS SDK 4.2.1进行编译
我想在屏幕上更改所有桌面(以前称为"空格")的壁纸.从OS X 10.6开始,NSWorkspace有一个类别允许设置壁纸,但是,当我使用此功能时,只有当前桌面的壁纸被更改,所有其他桌面保持不变.
然后我查看了桌面首选项plist并编写了一个类来修改它以反映我想要的更改(基本上设置了一个新的图像文件路径).保存新文件后,我发送了com.apple.desktop"BackgroundChanged"通知 - 谷歌,如果你不知道我在说什么,这就是人们在10.6天之前改变壁纸的方式.起初这没有产生任何结果,因此我在用户信息字典中输入了与nil相同的userInfo字典,就像你在设置中更改壁纸时所做的那样(订阅应用中的通知并更改壁纸)在设置应用程序中,您将看到它的样子).Luck在这里帮助了我,当我因为某种原因发送通知时,Dock崩溃了,当它重新加载时,它从首选项文件中加载了设置,从而显示了我的更改.
这适用于10.7.1,但是,我会a)没有糟糕的用户体验码头崩溃和重新加载,以及b)使用一个或多或少保证在未来版本中工作的路径.利用bug似乎不是一条稳定的道路.
关于如何更改所有桌面壁纸的任何其他想法?我也不确定NSWorkspace壁纸类别的当前行为是打算还是一个bug,但是,从壁纸首选项面板的行为来看,似乎前者就是这种情况.
我的ui-router状态提供程序中有以下状态:
$urlRouterProvider.when('/parent', '/parent/child');
$stateProvider.state('parent', {
url: "/parent",
abstract: true
});
$stateProvider.state('parent.child', {
url: "/child"
});
Run Code Online (Sandbox Code Playgroud)
其遵循其解释为默认子状态的最佳实践这里在UI路由器文档.
但是,当我现在在我的文档中包含一个链接引用父文件时ui-sref,<a ui-sref="parent">Link</a>我总是会收到错误,说我无法转换为抽象状态.当我手动将URL输入地址栏并点击输入时,一切正常.
相关的Plunker:http://plnkr.co/edit/d3Z0tOwC3VCTPqGiB0df?p =preview
如何ui-sref与默认子状态结合使用?
我正在为我的应用程序开发推送通知,我用PHP编写提供程序,它工作正常.我以前使用我的开发版和Apple的沙盒服务器测试推送通知,一切正常,现在我试图让它与AdHoc版本一起工作,但我从未在手机上收到任何消息.这是我做的:
我真的没有想法可能有什么不对,有人有想法吗?非常感谢!
我有两个Instant类的实例,java.time例如:
Instant instant1 = Instant.now();
Instant instant2 = Instant.now().plus(5, ChronoUnit.HOURS);
Run Code Online (Sandbox Code Playgroud)
现在我想检查两个实例Instant是否实际上在同一天(日,月和年匹配).我想,让我们只使用闪亮的新的LocalDate和通用的from静态方法:
LocalDate localdate1 = LocalDate.from(instant1);
LocalDate localdate2 = LocalDate.from(instant2);
if (localdate1.equals(localdate2)) {
// All the awesome
}
Run Code Online (Sandbox Code Playgroud)
除了通用from方法不是那么普遍,Java在运行时抱怨异常:
java.time.DateTimeException: Unable to obtain LocalDate from TemporalAccessor: 2014-11-04T18:18:12Z of type java.time.Instant
Run Code Online (Sandbox Code Playgroud)
这让我回到了1号广场.
如果两个实例Instant具有相同的日期(具有相同的日,月和年),建议/最快的方法是什么?
我想以编程方式将UIPageControl项添加到我的视图Controller中.self.view属性包含具有以下属性的UIScrollView:
scrollView = [[UIScrollView alloc] initWithFrame:applicationFrame];
scrollView.backgroundColor = [UIColor blackColor];
scrollView.maximumZoomScale = 1.0;
scrollView.minimumZoomScale = 1.0;
scrollView.clipsToBounds = YES;
scrollView.showsHorizontalScrollIndicator = NO;
scrollView.pagingEnabled = YES;
self.view = scrollView;
Run Code Online (Sandbox Code Playgroud)
到现在为止还挺好.现在我想添加一个PageControl元素(稍后几行):
pageControl.numberOfPages = 2;
pageControl.currentPage = 0;
Run Code Online (Sandbox Code Playgroud)
pageControl元素使用@property和@synthesize合成.但是,即使我添加了[self.view addSubview:pageControl],这也不会显示任何内容.
任何想法为什么这不起作用?
我在pandas中有一个数据框,并希望得到某个列的所有值超过X次.我知道这应该很容易,但不知怎的,我目前的尝试并没有得到任何结果.
这是一个例子:
>>> df2 = pd.DataFrame([{"uid": 0, "mi":1}, {"uid": 0, "mi":2}, {"uid": 0, "mi":1}, {"uid": 0, "mi":1}])
>>> df2
mi uid
0 1 0
1 2 0
2 1 0
3 1 0
Run Code Online (Sandbox Code Playgroud)
现在假设我想从列"mi"中获得出现超过2次的所有值,结果应该是
>>> <fancy query>
array([1])
Run Code Online (Sandbox Code Playgroud)
我已经尝试过使用groupby和count的一些东西但是我总是最终得到一个包含值及其各自计数的系列但不知道如何从中提取计数超过X的值:
>>> df2.groupby('mi').mi.count() > 2
mi
1 True
2 False
dtype: bool
Run Code Online (Sandbox Code Playgroud)
但是我现在如何使用它来获得真实的mi值?
任何提示赞赏:)