Преобразовать список в набор в Python

Elsie Dela Pena 30 Январь 2023 12 Июль 2021
  1. Разница между списком и множеством
  2. Использование метода set() для преобразования списка в набор в Python
Преобразовать список в набор в Python

В этом руководстве показано, как преобразовать список в набор в Python.

Разница между списком и множеством

Списки и наборы - это стандартные типы данных Python, в которых значения хранятся последовательно.

Список Python хранит значения, разделенные запятыми, в квадратных скобках. Он изменяемый, что означает, что его элементы могут быть изменены или изменены. Особенность списка Python заключается в том, что элементы не обязательно должны быть одного типа.

Ниже приведен пример того, как выглядит список Python:

list_1 = [1, 2, 3]
list_2 = ['Milk', 'Bread', 'Eggs']
# List with multiple data types
list_3 = ['Chocolate', 15.25, 200]

Наборы Python представляют собой неупорядоченный список уникальных элементов, которые могут иметь разные типы данных. Объект хранит значения, разделенные запятыми, и заключен в фигурные скобки {}. Он повторяемый и изменяемый, но хранит только неизменяемые объекты; это означает, что сам набор может быть изменен - ​​мы можем добавлять или удалять элементы; однако элементы внутри набора не должны изменяться. Мы не можем изменять элементы внутри набора или получать к ним доступ с помощью нарезки или индексации.

Вот пример того, как выглядит Python Set:

set_1 = {1, 2, 3}
set_2 = {'Milk', 'Bread', 'Eggs'}
# Sets with multiple data types
set_3 = {17.0, 'Hello World', (10, 20, 30)}

Теперь, когда мы знаем различия между списком Python и набором, давайте погрузимся в преобразование списка в набор.

Использование метода set() для преобразования списка в набор в Python

Самый простой способ преобразовать список в набор - использовать встроенный в Python метод set(). Преобразование списка с повторяющимися значениями будет автоматически удалено методом set() и сохранит те же уникальные элементы, что и исходный список. Метод set() принимает в качестве аргумента только один параметр:

  • iterable (необязательно) - последовательность (строка, список, кортеж и т. д.) или коллекции элементов

Вот синтаксис:

set(iterable)

Метод set() возвращает:

  • пустой набор, если аргументы не переданы.
  • сконструированный набор

Пример 1: преобразование списка Python с уникальными значениями

# initialize a list
_list = [5, 4, 3, 1, 6, 2]

# convert list to set
converted = set(_list)

print(converted)

Выход:

{1, 2, 3, 4, 5, 6}

Пример 2: преобразование списка с повторяющимися значениями

# initialize a list
grocery_list = ["milk", "bread", "eggs", "bread", "hotdogs", "eggs"]

# convert list to set
converted = set(grocery_list)

print(converted)

Выход:

{'eggs', 'bread', 'milk', 'hotdogs'}

Как видите, converted переменная теперь содержит только уникальные значения.

Пример 3: преобразование списка со смешанными типами данных

# initialize a list with mixed data types
grocery_list = ["milk", "bread", "eggs", ("Ham and Cheese", 2000), 19.43]

# convert the grocery_list to set
grocery_set = set(grocery_list)

# display the converted grocery_list
print(grocery_set)

Выход:

{'milk', 'bread', 'eggs', ('Ham and Cheese', 2000), 19.43}

Наборы Python предоставляют массив методов, из которых вы можете выбирать в зависимости от вашего варианта использования, а не просто преобразовывать список в набор. Для выполнения математических операций используются заданные методы: объединение, пересечение, разность и симметричная разность. Мы можем добиться этого, используя некоторые определенные операторы и методы набора Python.

Сопутствующая статья - Python Set

Сопутствующая статья - Python List