如何检查列表是否为空?
比如,如果传入以下内容:
a = []
我怎么检查一下 a
是否为空呢?
27 个回答
1109
我更喜欢这样写:
if len(li) == 0:
print('the list is empty')
这样一来,li
是一个序列(列表),我们想要检查它的大小,这一点就非常清楚了。我对 if not li: ...
的问题是,它给人一种错误的印象,仿佛 li
是一个布尔变量。
1506
用Python的标准方式来做这件事,可以参考一下PEP 8风格指南。
对于序列(比如字符串、列表和元组),可以利用空序列被认为是假的这个特点:
# Correct: if not seq: if seq: # Wrong: if len(seq): if not len(seq):
7148
if not a:
print("List is empty")
使用空的 list
的隐式布尔值特性是非常符合Python风格的做法。