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

a = []

如何检查a是否为空?


当前回答

len()是Python列表、字符串、字典和集合的O(1)操作。Python在内部跟踪这些容器中的元素数量。

JavaScript具有类似的truthy/falsy概念。

其他回答

if not a:
    print("List is empty")

使用空列表的隐含布尔性是相当Python的。

在真值测试中,空列表本身被认为是错误的(请参见python文档):

a = []
if a:
     print("not empty")

达伦·托马斯的回答:

编辑:反对测试的另一点空列表为False:多态性?你不应该依赖列表是列表。它应该只是像鸭子一样呱呱叫-你怎么样让你的duckCollection呱呱叫当它没有元素时为“False”?

duckCollection应该实现__nonzero_或__len__,因此if-a:将毫无问题地工作。

简单的方法是检查长度是否等于零。

if len(a) == 0:
    print("a is empty")

方法1(首选):

if not a:
   print ("Empty")

方法2:

if len(a) == 0:
   print("Empty")

方法3:

if a == []:
  print ("Empty")

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