Ситуация, с которой часто сталкиваются новички в Python, заключается в том, что требуется получить разницу между двумя списками. Например, имеются два списка:
list1 = ['Яблоко', 'Банан', 'Апельсин', 'Груша'] list2 = ['Яблоко', 'Банан']
И требуется получить третий список, который будет содержать элементы, которые есть в первом списке, но которых нет во втором списке:
list3 = ['Апельсин', 'Груша']
Важно отметить, что элементы в каждом списке уникальны и не повторяются.
Существует простой и быстрый способ решения этой задачи без использования циклов и проверок — с помощью преобразования списков в множества и использования операции разности множеств.
В Python, множество — это неупорядоченная коллекция уникальных элементов. Операция разности множеств позволяет получить элементы, которые есть в одном множестве, но которых нет в другом множестве.
Исходные списки можно преобразовать в множества с помощью функции set()
. После этого можно использовать операцию разности множеств, обозначенную символом -
. Полученное множество можно преобразовать обратно в список с помощью функции list()
.
Весь код, выполняющий это преобразование, будет выглядеть следующим образом:
list1 = ['Яблоко', 'Банан', 'Апельсин', 'Груша'] list2 = ['Яблоко', 'Банан'] set1 = set(list1) set2 = set(list2) set3 = set1 - set2 list3 = list(set3) print(list3) # Выведет: ['Апельсин', 'Груша']
Таким образом, с помощью преобразования списков в множества и использования операции разности множеств, можно быстро и просто получить разницу между двуми списками.
Добавить комментарий