希望有人能建议检查一个设置字符串是否存在于所有三个给定列表中的最有效方法,如果存在,则将itemInAllLists设置为True。
以下是我试图实现的总体想法。
item = 'test-element'
list_a = ['a','random','test-element']
list_b = ['light','apple','table']
list_c = ['car','field','test-element','chair']
itemInAllLists = False
if item in [list_a] and item in [list_b] and item in [list_c]:
itemInAllLists = True
1条答案
按热度按时间kgsdhlau1#
看看Python的
all
内置函数,如果一个可迭代对象的所有元素都为真,它将返回True
。如果你把所有的列表放在一个组合列表中,你可以执行list comprehension来检查每个列表。
正如deceze所提到的,你不必这样做,你所做的工作也很好,而且可能更容易阅读。使用
all
或any
可能更适合更多的列表,或者当你动态创建它们时。要使代码正常工作,您只需删除括号,使语法正确: