jjxx2005 发表于 2020-7-15 12:10:25

如果判断列表为空?

如果列表是:
a = []
那可以判断它为空

但是如果是这种情况

a = ["","",""]
b = ["a","b","c"]
我怎么判断a是空列表呢?前提是不用for循环遍历每一个元素的情况下如何判断?

qiuyouzhi 发表于 2020-7-15 12:13:14

a = ["","",""]
check = True if list(filter(lambda x: x, a)) else False
print(check)

永恒的蓝色梦想 发表于 2020-7-15 12:16:56

没有办法,必须遍历每一个元素。
楼上的 filter 本质上也是遍历了一遍。
不过,你可以使用 all 函数,看起来更直观些(虽然本质上也是遍历):>>> a = ["","",""]
>>> all(a)
False
>>> b = ["a","b","c"]
>>> all(b)
True

陈尚涵 发表于 2020-7-15 12:23:18

这种情况只能遍历啊,一个一个遍历看元素是否全部为False

陈尚涵 发表于 2020-7-15 12:23:51

filter和all的本质也都是遍历
页: [1]
查看完整版本: 如果判断列表为空?