result = []
for inner_list1 in list1:
    for inner_list2 in list2:
        set1 = set(inner_list1)
set2 = set(inner_list1)
if set1.intersection(set2):
    result.append(list(set1.union(set2)))
Сопоставление и объединение нескольких 2D-списков в Python