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

2023-11-25

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

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

分裂的结果是['']. I use bool检查它是否为空。它会返回True.

>>>bool([''])
True

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


With bool([''])你正在检查列表是否['']有任何内容,它所做的,内容恰好是空字符串''.

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

all(v for v in l)

这需要每个元素v在列表中l并检查它是否有True价值;如果all它返回的元素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

*As @ShadowRanger在评论中指出,可以做同样的事情all(l) or any(l)因为它们最终都只接受一个可迭代的。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何检查列表是否包含空元素? 的相关文章

随机推荐