hik*_*ker 51 python numpy list
如何返回'false',因为所有元素都是'false'?
给定的列表是:
data = [False, False, False]
Run Code Online (Sandbox Code Playgroud)
fal*_*tru 103
使用any:
>>> data = [False, False, False]
>>> not any(data)
True
Run Code Online (Sandbox Code Playgroud)
any 如果迭代中有任何真值,则返回True.
Ale*_*nko 16
基本上有两个函数处理iterable并返回True或False,具体取决于序列的哪些布尔值元素求值.
all(iterable)如果所有元素iterable都被视为真值(如reduce(operator.and_, iterable)),则返回True .
any(iterable)如果至少有一个元素iterable是真值,则返回True (同样,使用函数reduce(operator.or_, iterable)).
使用该all函数,您可以映射operator.not_列表或只是构建一个带有否定值的新序列,并检查新序列的所有元素是否为真:
>>> all(not element for element in data)
Run Code Online (Sandbox Code Playgroud)
使用该any函数,您可以检查至少有一个元素是否为真,然后否定结果,因为False如果有一个真正的元素则需要返回:
>>> not any(data)
Run Code Online (Sandbox Code Playgroud)
根据De Morgan的定律,这两个变体将返回相同的结果,但我更喜欢最后一个(使用any),因为它更短,更易读(并且可以直观地理解为"数据中没有真正的价值" ")并且效率更高(因为你没有构建任何额外的序列).
| 归档时间: |
|
| 查看次数: |
50190 次 |
| 最近记录: |