python - 如何检查 python 可迭代数组中的任何元素是否为 None、空数组或 False(不包括零)?

标签 python arrays nonetype

有一个列表:

x = [5, "ce", 0, (32, "a")]

它不包含 None、空数组或 False 元素,因此它应该返回 True

0 不应被视为空对象。

y = [5, "ce", 0,, "", (32, "a")]

它包含一个空字符串,因此应该返回False

你会怎样以最快的方式做到这一点?

最佳答案

使用内置all :

>>> all(e not in [None, []] and e is not False for e in [5, "ce", 0, (32, "a")])
True
>>> all(e not in [None, []] and e is not False for e in [5, "ce", 0, 0, (32, "a")])
False

我注意到使用 e not in [None, [], False] 时出现问题,因为 0 in [None, [], False] 给出

关于python - 如何检查 python 可迭代数组中的任何元素是否为 None、空数组或 False(不包括零)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58169065/

相关文章:

python - 解析并创建一个带有条件的新df

python - Cython:编译所有 C 依赖项

java - java while 循环中的 VariableDeclaratorID 异常

python - 使用 Python 创建一个 "uncrackable" "random"数字

python - super 简单示例的不正确的 Python Numpy 特征向量值

PHP - 循环索引 JSON 数组

php - 将二维数组转换为多维

list - IronPython:list.append(string) 返回 None/null

python - IntegrityError 没有在 None 上引发