У меня есть два списка списков. Я хочу перебрать их и сравнить значения в каждой скобке в скобках списка за скобками .....
List_1
[[42, 43, 45, 48, 155, 157], [37, 330, 43, 47, 157], [258, 419, 39, 40, 330, 47], [419, 39, 44, 589, 599, 188].....
List_2
[[37, 330, 43, 47, 157], [258, 419, 39, 40, 330, 47], [419, 39, 44, 589, 599, 188], [41, 44, 526, 602, 379, 188]....
Мне нужно сравнить первую скобку вList_1 [42, 43, 45, 48, 155, 157]
С первой скобкой в List_2 [37, 330, 43, 47, 157]
желаемый результат - числа, которые одинаковы в каждой последовательной скобке ... для первой скобки результат равен 43 и 157
, затем мне нужно продолжить вторую скобкув List_1, со второй скобкой в List_2 и т. д.
- Количество значений в каждой скобке может варьироваться
- Мне нужно, чтобы каждая скобка в 1 списке сравнивалась с соответствующей скобкой из другойlist
- Мне не нужно, чтобы результаты были отдельными
Я на самом базовом уровне, но я пробовал несколько разных вещей, включая использование пересечения множеств, списокМатчи.Я уверен, что есть простой способ, но только начинающий.
set_x = set([i[1] for i in list_1])
print(set_x)
set_y = set([i[0] for i in list_2])
matches = set_x.intersection(set_y)
print(matches)
Это ответ, который далек от {3, 8, 396, 12,}
, и я не могу понять, что он делает.
тоже пробовал это
common_elements=[]
import itertools
for i in list(itertools.product(coords_list_1,coords_list_2)):
if i[0] == i[1]:
common_elements.append(i[0])
print(common_elements)
, но это дает массу результатов.
Спасибо за вашу помощь!