我知道这个问题在这里已经被问过几次了,我经历了大部分,但是由于某种原因,我无法利用这些解决方案来解决当前问题。
我有一个包含11个子列表的列表: list_a = [[1,2,3],[2,3,4],[3,4,5].....[11,12,13]]
我也有一个随机生成的长度为9的列表,范围为1到13:
list_b = [1,4,7,8,2,3,8,9]
我想创建一个遍历list_a子列表的函数,并且仅当子列表中的所有项目都存在于list_b中时,才返回true。我尝试了“全部”功能,但在这里似乎不起作用,因为它需要列表中的所有项目,而不是子列表。
for i in list_a:
if all(a in i for a in list_b):
print ('Yes')
先感谢您。
您只是弄乱了all()
逻辑。您需要检查子列表中的每个项目是否都在其中list_b
(而不是检查其中的每个项目list_b
是否在子列表中)。
将all()
逻辑更改为:
all(a in list_b for a in i)
顺便说一句,如果您更改list_b
为set,那会更有效率,并且可以简化事情。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句