Опубликован: 20.11.2023 105
Довольно часто возникает задача сравнить два списка в Python и найти одинаковые элементы или имеющиеся различия.
Решить эту задачу можно разными способами, но одним из наиболее эффективных является использование множеств set
, которые поддерживают операции, применяемые к математическим множествам, такие как объединение, пересечение и разность.
Для сравнения двух списков их можно перевести в множества с помощью функции set()
, а затем применить к полученным множествам:
&
- intersection
пересечение множеств, позволяющий найти множество элементов, присутствующих как в первом, так и во втором исходном множестве;^
- symmetric difference
симметрической разности множеств, позволяющий найти множество элементов, присутствующих либо в первом, либо во втором исходном множестве;list_1 = [1, 3, 5, 7, 8, 9, 10]
list_2 = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11]
# сравнение двух списков и нахождение пересечения элементов:
print(list(set(list_1) & set(list_2)))
[1, 3, 5, 7, 8, 9, 10] # intersection list_1 and list_2
# сравнение двух списков и вывод списка различий:
print(list(set(list_1) ^ set(list_2)))
[2, 4, 6, 11] # symmetric difference
Методы преобразования списка в строку и обратно
Подсчет количества вложенных списков в списке
Поэлементное суммирование списков (кортежей)
Комментариев нет.