найти одинаковое в 3 списках

Есть 3 списка:

lst_1 = [1, 2, 3, 4, 5]
lst_2 = [1, 6, 7, 5, 2]
lst_3 = [2, 3, 4, 8, 9]

Как с помощью цикла найти числа, присутствующие во всех списках?


Ответы (2 шт):

Автор решения: MaxU

Наиболее эффективным способом здесь будет пересечение множеств:

res = list(set(lst_1) & set(lst_2) & set(lst_3))

print(res)
# [2]
→ Ссылка
Автор решения: n1tr0xs

Если принципиально цикл нужен, то вот:

result =[]
for el in set(lst_1):
    if el in lst_2 and el in lst_3:
        result.append(el)

Либо можно с помощью генератора списка

result =[el for el in set(lst_1) if el in lst_2 and el in lst_3]
→ Ссылка