例如,如果通过以下步骤:

a = []

如何检查a是否为空?


当前回答

我更喜欢以下内容:

if a == []:
   print "The list is empty."

其他回答

我更喜欢明确地说:

if len(li) == 0:
    print('the list is empty')

通过这种方式,可以100%清楚地看出li是一个序列(列表),我们想测试它的大小。我的问题,如果不是李:。。。这给人一种错觉,认为li是一个布尔变量。

我更喜欢以下内容:

if a == []:
   print "The list is empty."
print('not empty' if a else 'empty')

更实用一点:

a.pop() if a else None

最短版本:

if a: a.pop() 

空列表的真值为False,而非空列表的值为True。

已经给出了很多答案,其中很多都很好。我只是想加上那张支票

not a

也将通过None和其他类型的空结构。如果您确实想检查空列表,可以执行以下操作:

if isinstance(a, list) and len(a)==0:
    print("Received an empty list")