Наборы Python


Оглавление

    Показать оглавление

myset = {"apple", "banana", "cherry"}

Набор

Наборы используются для хранения нескольких элементов в одной переменной.

Set — один из 4 встроенных типов данных в Python, используемых для хранения коллекций данных. данные, остальные 3 — список, Кортеж и словарь, все с разными качествами и использованием.

Набор — это коллекция, которая является неупорядоченной, неизменяемой* и неиндексированной.

* Примечание. Установленные элементы нельзя изменить, но можно удалить. элементы и добавлять новые элементы.

Множества записываются в фигурных скобках.

Пример

Создайте набор:

thisset = {"apple", "banana", "cherry"}
print(thisset)

Попробуйте сами →

thisset = {"apple", "banana", "cherry"}
print(thisset)

# Note: the set list is unordered, meaning: the items will appear in a random order.

# Refresh this page to see the change in the result.

Вывод результата выполнения:

Примечание. Наборы неупорядочены, поэтому вы не можете быть уверены, в каком из них. порядок предметов появится.

Набор предметов

Элементы набора неупорядочены, неизменяемы и не допускают повторяющихся значений.

Неупорядоченный

Неупорядоченный означает, что элементы в наборе не имеют определенного порядка.

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

Неизменяемый

Элементы набора неизменяемы, то есть мы не можем изменить элементы после создания набора.

После создания набора вы не можете изменять его элементы, но можете удалять элементы. и добавлять новые элементы.

Дубликаты не допускаются

В наборах не может быть двух предметов с одинаковым значением.

Пример

Повторяющиеся значения будут игнорироваться:

thisset = {"apple", "banana", "cherry", "apple"}

print(thisset)

Попробуйте сами →

thisset = {"apple", "banana", "cherry", "apple"}

print(thisset)

Вывод результата выполнения:

{'banana', 'cherry', 'apple'}

Примечание. Значения True и 1 считаются одним и тем же значением в наборах, и рассматриваются как дубликаты:

Пример

Верно и 1 считается одним и тем же значением:

thisset = {"apple", "banana", "cherry", True, 1, 2}

print(thisset)

Попробуйте сами →

thisset = {"apple", "banana", "cherry", True, 1, 2}

print(thisset)

Вывод результата выполнения:

{True, 2, 'banana', 'cherry', 'apple'}

Примечание. Значения False и 0 считаются одним и тем же значением в наборах, и рассматриваются как дубликаты:

Пример

False и 0 считается одним и тем же значением:

thisset = {"apple", "banana", "cherry", False, True, 0}

print(thisset)

Попробуйте сами →

thisset = {"apple", "banana", "cherry", False, True, 0}

print(thisset)

Вывод результата выполнения:

{False, True, 'cherry', 'apple', 'banana'}

Получить длину набора

Чтобы определить, сколько элементов содержит набор, используйте len() функция.

Пример

Получить количество предметов в наборе:

thisset = {"apple", "banana", "cherry"}

print(len(thisset))

Попробуйте сами →

thisset = {"apple", "banana", "cherry"}

print(len(thisset))

Вывод результата выполнения:

3

Набор элементов — типы данных

Элементы набора могут иметь любой тип данных:

Пример

Строковые, int и логические типы данных:

set1 = {"apple", "banana", "cherry"}
set2 = {1, 5, 7, 9, 3}
set3 = {True, False, False}

Попробуйте сами →

set1 = {"apple", "banana", "cherry"}
set2 = {1, 5, 7, 9, 3}
set3 = {True, False, False}

print(set1)
print(set2)
print(set3)

Вывод результата выполнения:

{'cherry', 'apple', 'banana'}
{1, 3, 5, 7, 9}
{False, True}

Набор может содержать разные типы данных:

Пример

Набор строк, целых чисел и логических значений:

set1 = {"abc", 34, True, 40, "male"}

Попробуйте сами →

set1 = {"abc", 34, True, 40, "male"}

print(set1)

Вывод результата выполнения:

{True, 34, 40, 'male', 'abc'}

тип()

С точки зрения Python наборы определяются как объекты с типом данных set:

<class 'set'>

Пример

Каков тип данных набора?

myset = {"apple", "banana", "cherry"}
print(type(myset))

Попробуйте сами →

myset = {"apple", "banana", "cherry"}

print(type(myset))

Вывод результата выполнения:

<class 'set'>

Конструктор set()

Также можно использовать set() конструктор для создания набора.

Пример

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

thisset = set(("apple", "banana", "cherry")) # note the double round-brackets
print(thisset)

Попробуйте сами →

thisset = set(("apple", "banana", "cherry"))
print(thisset)
# Note: the set list is unordered, so the result will display the items in a random order.

Вывод результата выполнения:

Коллекции Python (массивы)

В языке программирования Python существует четыре типа данных коллекций:

  • Список - это упорядоченная и изменяемая коллекция. Позволяет дублировать участников.

  • Tuple - это упорядоченная и неизменяемая коллекция. Позволяет дублировать участников.

  • Set - это неупорядоченная, неизменяемая* и неиндексированная коллекция. Никаких повторяющихся участников.

  • Словарь — это упорядоченная коллекция**. и изменчивый. Никаких повторяющихся участников.

*Установленные элементы невозможно изменить, но вы можете удалять элементы и добавлять новые. предметы.

**Начиная с версии Python 3.7, словари упорядочены. В Python 3.6 и более ранних версиях словари неупорядочены.

При выборе типа коллекции полезно понимать свойства этого типа. Выбор правильного типа для конкретного набора данных может означать сохранение смысла, а также повышение эффективности или безопасности.