使用Clock clock = Clock.systemDefaultZone();
int samples = 1_000;
LocalDateTime[] instants = new LocalDateTime[samples];
int k = 0;
for (int i = 0; i < samples; i++) {
instants[i] = LocalDateTime.now(clock);
for (int j = 0; j < 10000; j++) {
k = j % 2;
}
}
与if object is None
有什么区别?
因此,当我做一些编码时,我弄乱了QListWidget中的信号,在选择实例中,它返回了2个信号,并返回了2个对象-QListWidgetItem和None。
为了解决无返回值,我使用了if not object
,但被告知if object is None
会更好。即使这样,使用两个if not object
中的任何一个似乎仍然可以使我达到相同的结果。
关于何时使用这两种方法,是否有更好的方案?
答案 0 :(得分:2)
not object
为真,如果object
具有任何虚假值,例如0
或False
。
如果您先验地知道变量包含QListWidgetItem
或None
,则None
是唯一可能出现的错误,因此if not object:
是一种更简单的编写方式条件。
在其他情况下,您只需要小心即可。考虑一个可以包含数字或None
的变量。由于未考虑数字可能为0
的可能性,因此我看到了很多错误。