Python 内置all()函数在负数列表上不返回True
为什么??这不是真的吗Python 内置all()函数在负数列表上不返回True,python,built-in,Python,Built In,为什么??这不是真的吗 >>> sub = [-1,-2,-3,-4,-5,-6] >>> print all(sub) < 0 False >>> sub=[-1,-2,-3,-4,-5,-6] >>>打印所有(子项)>> 返回True,因为sub的所有元素都非零。 True不小于零。 因此all(sub)
>>> sub = [-1,-2,-3,-4,-5,-6]
>>> print all(sub) < 0
False
>>>
sub=[-1,-2,-3,-4,-5,-6]
>>>打印所有(子项)<0
错误的
>>>
返回True
,因为sub
的所有元素都非零。True
不小于零。因此
all(sub)<0
为假
如果要测试sub
的所有元素是否为负值,可以执行以下操作:
all(x < 0 for x in sub)
all(子系统中x的x<0)
返回True
,因为sub
的所有元素都非零。True
不小于零。因此
all(sub)<0
为假
如果要测试sub
的所有元素是否为负值,可以执行以下操作:
all(x < 0 for x in sub)
all(子系统中x的x<0)
@khelwood的答案是正确的。但是,您也可以使用numpy实现您想要的功能
sub = np.asarray(sub)
np.all(sub<0)
sub=np.asarray(sub)
np.all(sub@khelwood的答案是正确的。不过,你也可以使用numpy来满足你的需要
sub = np.asarray(sub)
np.all(sub<0)
sub=np.asarray(sub)
np.all(subYes,这就是我提到正确答案的原因。但是,很多脚本已经导入了numpy,在这种情况下,这可能是更好的解决方案。是的,这就是我提到正确答案的原因。但是,很多脚本已经导入了numpy,在这种情况下,这可能是更好的解决方案。