Python-检查数组是否为空
我有一个由两个int组成的数组,我想检查其中一个是否为None,所以我有:Python-检查数组是否为空,python,arrays,Python,Arrays,我有一个由两个int组成的数组,我想检查其中一个是否为None,所以我有: print hourArray if hourArray[0] or hourArray[1] is None: print "FAILED???" else: print "array is full" 即使在if语句之前,print hourArray显示了这一点 [2040, 2640] 它打印失败???,即使数组中的两个元素都不是None 为什么会发生这种情况?问题是您正在检查如果(hourA
print hourArray
if hourArray[0] or hourArray[1] is None:
print "FAILED???"
else:
print "array is full"
即使在if语句之前,print hourArray
显示了这一点
[2040, 2640]
它打印失败???
,即使数组中的两个元素都不是None
为什么会发生这种情况?问题是您正在检查
如果(hourArray[0])或(hourArray[1]为None)
,则所有非零整数值始终为真
你应该这样做-
if hourArray[0] is None or hourArray[1] is None:
非零整数值为真的示例-
>>> if 1:
... print('Hello')
...
Hello
如果(hourArray[0]是None)或(hourArray[1]是None)
或如果[hourArray[0]中没有,hourArray[1]
如果a或b==something是Python中极其常见的错误,请参阅副本。首先,如果a==something或b==something,那么它应该是。其次,您应该使用=
而不是is
@CoryKramer,与python中的is
比较,根据。修复了,很抱歉错过了这一点。