例如,如果通过以下步骤:
a = []
如何检查a是否为空?
例如,如果通过以下步骤:
a = []
如何检查a是否为空?
当前回答
如果要检查列表是否为空:
l = []
if l:
# do your stuff.
如果要检查列表中的所有值是否为空。然而,空列表将为True:
l = ["", False, 0, '', [], {}, ()]
if all(bool(x) for x in l):
# do your stuff.
如果要同时使用这两种情况:
def empty_list(lst):
if len(lst) == 0:
return False
else:
return all(bool(x) for x in l)
现在您可以使用:
if empty_list(lst):
# do your stuff.
其他回答
如果要检查列表是否为空:
l = []
if l:
# do your stuff.
如果要检查列表中的所有值是否为空。然而,空列表将为True:
l = ["", False, 0, '', [], {}, ()]
if all(bool(x) for x in l):
# do your stuff.
如果要同时使用这两种情况:
def empty_list(lst):
if len(lst) == 0:
return False
else:
return all(bool(x) for x in l)
现在您可以使用:
if empty_list(lst):
# do your stuff.
方法1(首选):
if not a:
print ("Empty")
方法2:
if len(a) == 0:
print("Empty")
方法3:
if a == []:
print ("Empty")
Pythonic的做法来自PEP8风格指南。
对于序列(字符串、列表、元组),请使用空序列为false的事实:#正确:如果不是seq:如果seq:#错误:如果len(seq):如果不是len(seq):
从python3开始,您可以使用
a == []
检查列表是否为空
编辑:这也适用于python2.7。。
我不知道为什么有这么多复杂的答案。这很清楚明了
if not a:
print("List is empty")
使用空列表的隐含布尔性是相当Python的。