Python:检查列表中是否存在字符串

Joe*_*Joe -2 python conditional python-2.7

我有一个简单的代码生成一个列表列表并用字符串"null"填充它,但是当我尝试检查整个列表列表中是否不存在"null"时,它不会给我结果我我期待着

lst = [ ['null']*4 for n in xrange(2) ]
print lst
if ('null' not in lst):
    print "testing"
Run Code Online (Sandbox Code Playgroud)

这段代码总是打印"测试",我不知道为什么.感谢您的解释

xnx*_*xnx 7

您的列表lst不是字符串列表,而是字符串列表的列表.你可以试试:

if any('null' in lst2 for lst2 in lst):
Run Code Online (Sandbox Code Playgroud)

作为您的测试:也就是说,True如果'null'主列表的任何子列表中都有字符串,则返回lst.