[英]Best way to return False for list of empty tuples
Sometimes, DB returns list of empty tuples as such [(), (), ()]
. 有时,DB返回空元组的列表,如
[(), (), ()]
。 I need to set False
for this type of return. 我需要为这种类型的返回设置
False
。 Here is what I do: 这是我做的:
Say: 说:
a = [(), (), ()]
b = all([bool(i) for i in a])
print b
False
Is there a better way? 有没有更好的办法?
Actually, you want to use any
, not all
: 实际上,你想要使用
any
,而不是all
:
>>> a = [(), (), ()]
>>> b = all(a)
>>> print b
False
>>>
>>> a = [(), (1,), ()]
>>> b = all(a)
>>> print b
False
>>>
>>> a = [(), (), ()]
>>> b = any(a)
>>> print b
False
>>>
>>> a = [(), (1,), ()]
>>> b = any(a)
>>> print b
True
>>>
Notice that all
will return False
unless every element is "truthy". 请注意,除非每个元素都是“真实的”,否则
all
将返回False
。
You don't need to use bool
at all. 你根本不需要使用
bool
。
使用any()
检查是否有非空。
any([(), (), ()])
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.