Набор Python используется для сохранения нескольких элементов в одной переменной. Набор не содержит повторяющихся элементов. Итак, если вы хотите хранить уникальные элементы, используйте заданную структуру данных. В набор можно добавить один или несколько элементов. Давайте посмотрим, как добавить список в набор Python.
Добавление списка в множество с помощью метода set.update()
Чтобы добавить список в множество, используйте функцию set.update(). set.update() — это встроенная функция Python, которая принимает один элемент или несколько итерируемых последовательностей в качестве аргументов и добавляет их в набор.
Синтаксис
|
1 |
set.update(element or sequence) |
Аргумент
Метод update() принимает в качестве аргумента element или sequence.
Пример
Давайте определим набор и добавим этот набор в список.
|
1 2 3 4 5 6 7 8 9 |
num_set = {11, 21, 19, 18, 46} # List of numbers num_list = [111, 118, 119, 200, 121, 129, 146] # Add all elements of a list to the set num_set.update(num_list) print('Modified Set: ') print(num_set) |
Вывод:
|
1 |
Modified Set: {129, 200, 11, 18, 19, 146, 21, 46, 111, 118, 119, 121} |
В этом примере мы передали список в качестве аргумента функции update(), и она добавила все элементы списка во множество. Следует помнить, что набор содержит уникальные элементы. Поэтому, если он находит повторяющийся элемент, он удаляет дубликаты из набора.
Таким образом, элементы, которых не было в наборе, были добавлены, а повторяющиеся элементы просто пропущены.
Использование функции add() и цикла for
set.add() — это встроенная функция, которая принимает один элемент в качестве аргумента и добавляет этот элемент в набор. Если вы передадите список или другие итерации, произойдет сбой.
Синтаксис
|
1 |
set.add(element) |
Аргументы
Метод set.add() принимает один element в качестве аргумента и добавляет этот элемент в набор. Но этот элемент должен быть неизменным.
Пример
Давайте добавим список для установки, используя только функцию set.add(), и посмотрим, что у нас получится.
|
1 2 3 4 5 6 7 8 9 |
num_set = {11, 21, 19, 18, 46} # List of numbers num_list = [111, 118, 119, 200, 121, 129, 146] # Add all elements of a list to the set num_set.add(num_list) print('Modified Set: ') print(num_set) |
Вывод:
|
1 2 3 4 |
Traceback(most recent call last): File "/Users/krunal/Desktop/code/pyt/app.py", line 7, in <module> num_set.add(num_list) TypeError: unhashable type: 'list' |
И мы получили TypeError: unhashable type: ‘list’. Это означает, что мы не можем использовать только функцию add() для добавления списка в набор. Чтобы обойти это, мы будем использовать цикл for.
Мы будем перебирать все элементы в списке, используя цикл for, и передавать каждый элемент в качестве аргумента функции add().
Если этого предмета еще нет в наборе, он будет добавлен во множество.
|
1 2 3 4 5 6 7 8 9 |
num_set = {11, 21, 19, 18, 46} # List of numbers num_list = [111, 118, 119, 200, 121, 129, 146] for item in num_list: num_set.add(item) print('Modified Set: ') print(num_set) |
Вывод:
|
1 |
Modified Set: {129, 200, 11, 18, 19, 146, 21, 46, 111, 118, 119, 121} |
Использование функций add() и union()
set union() — это встроенный метод Python, который возвращает новый набор с уникальными элементами из всех наборов. См. приведенный ниже пример.
|
1 2 3 4 5 6 7 |
num_set = {11, 21, 19, 18, 46} # List of numbers num_list = [111, 118, 119, 200, 121, 129, 146] num_set = num_set.union(set(num_list)) print('Modified Set: ', num_set) |
Вывод:
|
1 |
Modified Set: {129, 200, 11, 46, 111, 18, 19, 146, 21, 118, 119, 121} |
Как видите, мы преобразовали наш список в множество и передали его в функцию union() в качестве аргумента. Метод union() возвращает набор, содержащий элементы обоих наборов.
Оператор |
| оператор используется для объединения двух множеств.
|
1 2 3 4 5 6 7 |
num_set = {11, 21, 19, 18, 46} # List of numbers num_list = [111, 118, 119, 200, 121, 129, 146] num_set |= set(num_list) print('Modified Set: ', num_set) |
Вывод:
|
1 |
Modified Set: {129, 200, 11, 46, 111, 18, 19, 146, 21, 118, 119, 121} |
