python - 如何检查列表是否包含空元素?

标签 python list python-2.7

假设我有一个空字符串,它将被拆分:

>>>''.split(',')
['']

拆分的结果是['']。我使用 bool 来检查它是否为空。它将返回 True

>>>bool([''])
True

如何检查拆分结果是否为空?

最佳答案

使用 bool(['']),您正在检查列表 [''] 是否包含任何内容,确实如此 ,内容恰好是空字符串''

如果你想检查列表中的所有元素是否不为“空”(所以如果列表包含字符串'',它将返回False) 您可以使用内置函数 all() :

all(v for v in l)

这会获取列表 l 中的每个元素 v 并检查它是否具有 True 值;如果 所有 元素都返回 True 如果至少有一个没有返回 False。例如:

l = ''.split(',')

all(v for v in l)
Out[75]: False

您可以将其替换为 any() 执行部分检查并查看列表 l 中的任何项目 是否具有 True 的值。

一个更全面的示例*,同时包含这两种用途:

l = [1, 2, 3, '']

all(l)
# '' doesn't have a True value
Out[82]: False

# 1, 2, 3 have a True value
any(l)
Out[83]: True

*作为 @ShadowRanger 在评论中指出,同样的事情可以用 all(l)any(l) 来完成,因为它们都只接受一个可迭代的结尾。

关于python - 如何检查列表是否包含空元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35167751/

相关文章:

python - 您如何配置 Django 以进行简单的开发和部署?

python - 合并两个列表中的元素

python - 加快阵列中所有可能对之间的距离

python - 如何在python nose中打印出测试的文件名和行号?

python - 我的循环内部出了什么问题?

list - Scala:从列表[Tuple3]到映射[String,String]

python - 使用 Tweepy 从 Twitter 获取数据并存储在 csv 文件中

python - 通过 Pexpect 减少戒烟

python - 在golang中Flask的@before_first_request相当于什么?

Python3找到最后一次出现的字符串然后写入