检查列表是否为空或仅包含None的最简洁方法?
最简洁的方法来检查一个列表是否为空,或者只包含None(空值)?
我知道我可以测试:
if MyList:
pass
还有:
if not MyList:
pass
但是如果列表里有一个(或多个)项目,但这些项目都是None呢:
MyList = [None, None, None]
if ???:
pass
4 个回答
4
你可以直接用 ==
来比较两个列表:
if x == [None,None,None]:
if x == [1,2,3]
9
你可以使用 all()
这个函数来检查所有的元素是否都是 None(空值)。
a = []
b = [None, None, None]
all(e is None for e in a) # True
all(e is None for e in b) # True