有没有一种方法可以在不组合的情况下同时迭代两个不同长度的列表?
我尝试了itertools.product(list1, list2)
,但它与嵌套循环非常相似。因此,第二个列表会为第一个列表中的每一项进行迭代,这不是我想要的。
我想比较两个列表,看看它们是否匹配。
如果您的目的是检查差异,您可以使用set
s。假设你有两个列表,比如
a=["one", "two", "three"]
b=["one", "other"]
您可以通过将它们转换为设置来检查差异:
print(set(a) - set(b))
订单很重要:第一项是你要检查的第二项:
print(set(a) - set(b))
返回{'three', 'two'}
(第一个集合中存在但第二个集合中缺少的项目(,而
print(set(b) - set(a))
返回{'other'}