Python 如何检查列表是否有空字符串

Python 如何检查列表是否有空字符串,python,string,list,Python,String,List,假设我有一个列表[''Tom','Jane','John','0'],我写了以下内容来检查它是否有空字符串': 我希望这只会选择空字符串,但也会选择包含“0”的列表。“0”字符串有效,我不想将其过滤掉。那么,我如何在python列表中检查空字符串呢?这个怎么样: if any(len(x) == 0 for x in row): print("contains empty string, continue now") continue 检查列表行[1://code>中的每个字符

假设我有一个列表
[''Tom','Jane','John','0']
,我写了以下内容来检查它是否有空字符串
'

我希望这只会选择空字符串,但也会选择包含“0”的列表。“0”字符串有效,我不想将其过滤掉。那么,我如何在python列表中检查空字符串呢?

这个怎么样:

if any(len(x) == 0 for x in row):
    print("contains empty string, continue now")
    continue
检查列表
行[1://code>中的每个字符串
s
,空字符串是否为其子字符串。这总是正确的,琐碎的。你的意思是

any(s == '' for s in row[1:])
但这可以缩写为

'' in row[1:]
而不是使用:

if any('' in s for s in row[1:]):
将您的条件更改为:

if '' in your_list:

其中,您的列表是您正在检查的列表的名称。

让我们以您的示例为列表命名:

list = ['', 'Tom', 'Jane', 'John', '0']
if '' in list:
    do something

这就是你所需要的

您只需检查列表中是否有元素

if '' in lst:
     # ...

if '' in lst[:1]:  # for your example
     # ...
以下是一个例子:

>>> lst = ['John', '', 'Foo', '0']
>>> lst2 = ['John', 'Bar', '0']
>>> '' in lst
True
>>> '' in lst2
False

如果
中的某些元素不是字符串,这可能会产生误报。我必须补充的是,如果
是字符串,我的答案会给出误报,因此这是否足以给出否决票是值得怀疑的。
->
中的
='
(或者更简单的
如果行中的'
if '' in lst:
     # ...

if '' in lst[:1]:  # for your example
     # ...
>>> lst = ['John', '', 'Foo', '0']
>>> lst2 = ['John', 'Bar', '0']
>>> '' in lst
True
>>> '' in lst2
False