python 两个数据列表匹配查找

假设有两个数据列表
List1 = [(1,2),(3,4),(2,5)]
List2 = [(1,2,3),(1,4,6),(2,5,10)]
如何在list2中匹配出含有list1的数据结果?
期望返回数据结果是找到list2中的(1,2,3),(2,5,10)

代码可这么 写:


List1 = [(1,2),(3,4),(2,5)]
List2 = [(1,2,3),(1,4,6),(2,5,10)]
gt=[]
for m in List2:
    for n in List1:
        if set(m)&set(n)==set(n):
            gt.append(m)
print(gt)

如有帮助,请点采纳


List1 = [(1,2),(3,4),(2,5)]
List2 = [(1,2,3),(1,4,6),(2,5,10)]
for i in List2:
    for j in List1:
        r = 0
        for k in j:
            if k in i:
                r += 1
        if len(j) == r:
            print(i)

img

想做包含运算,那你应该用集合,不是列表


List1 = [(1,2),(3,4),(2,5)]
List2 = [(1,2,3),(1,4,6),(2,5,10)]
res = []
for a in List1:
    for b in List2:
        if set(a).issubset(set(b)):
            res.append(b)
for elem in res:
    print(elem)

结果:

img

如果觉得答案对你有帮助,请点击下采纳,谢谢~