У меня есть некоторые проблемы с упражнением на питоне. У меня есть большой список кортежей из 10 элементов, содержащий все комбинации из 20 чисел.
import itertools
Comb = []
data = [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20]
for i in itertools.combinations(data, 10):
Comb.append(i)
Я хочу уменьшить список, удалив кортежи, которые имеют как минимум 7 общих элементов с кортежем из другого списка
L=[(1, 2, 3, 4, 5, 6, 7, 8, 9, 10),(11,12,13,14,15,16,17,18,19,20),(1, 2, 3, 5, 6, 7, 9, 10, 11, 12)]
Я пытался решить так:
for x in Comb:
for i, y in enumerate(Comb):
for j in L:
similarity = len(set(y).intersection(set(j)))
if similarity > 7:
del Comb[i]
, но, похоже, это не сработало.
Любая помощь?