以下是我的问题:
我使用numpy的any()函数来检查我的数组是否为空。
a = numpy.array([1., 2., 3.])
a.any()
#True
a = numpy.array([0., 0., 0.])
a.any()
#False
我认为,考虑到0.是一个浮点数,来自numpy的any()函数应该返回True。我该如何做到这一点?
为什么numpy不将零视为实际值?
我使用的是Python 2.6。
any()
的意思是 "数组中是否有任何一个元素的布尔值为 true?"。由于 0.
的布尔值为 false(非零数为 true),所以当数组只包含零时,a.any()
为 false 是正常的。bool()
检查任何 Python 对象的布尔值。a.size
(没有元素则为 0)。any
将返回False
。
0
视为假。 - abarnert
False
的实际值。 - jonrsharpe