2.1 Множество и его свойства
Множества — это особый тип коллекции данных в программировании, который помогает хранить уникальные элементы. Проще говоря, множество похоже на корзину, в которую можно класть только неповторяющиеся предметы. Если вы попытаетесь положить в корзину что-то, что уже там есть, корзина просто проигнорирует это действие.
Основные характеристики множеств
Уникальность:
В множестве каждый элемент уникален. Если вы добавите элемент, который уже существует в множестве, он не будет добавлен повторно.
Неупорядоченность:
В отличие от списков, элементы в множестве не имеют определенного порядка.
Это значит, что
вы не можете обращаться к элементам по индексу
.
Изменяемость:
Множества можно изменять — добавлять и удалять элементы, но сами элементы множества должны быть неизменяемыми (например, числа, строки или кортежи).
2.2 Создание множества в Python
Давайте рассмотрим все способы создания множеств в Python, чтобы вы имели полный арсенал методов для работы с ними.
Использование фигурных скобок
Наиболее распространенный способ создания множества — использование фигурных скобок {}. Так же, как и при работе с картежами и списками, вы просто перечисляете элементы внутри скобок:
fruit_set = {"apple", "banana", "cherry"}
print(fruit_set) # Вывод: {"banana", "cherry", "apple"}
Элементы могут быть различных типов, но каждый элемент должен быть уникальным.
fruit_set = {"apple", 1, 3.25}
print(fruit_set) # Вывод: {1, "apple", 3.25}
Использование функции set()
Функция set()
может использоваться для создания множества из
другого итерируемого объекта, например, списка, строки или кортежа.
Из списка
list_to_set = set([1, 2, 3, 4, 4, 5])
print(list_to_set) # Вывод: {1, 2, 3, 4, 5}
Из строки
string_to_set = set("hello")
print(string_to_set) # Вывод: {"h", "e", "l", "o"}
Из кортежа
tuple_to_set = set((1, 2, 3, 4, 5))
print(tuple_to_set) # Вывод: {1, 2, 3, 4, 5}
Из другого множества
Вы можете создать множество из другого множества, что полезно для создания копий.
original_set = {"apple", "banana", "cherry"}
new_set = set(original_set)
print(new_set) # Вывод: {"banana", "cherry", "apple"}
Пустое множество
Для создания пустого множества используется функция
set()
. Обратите внимание, что использование фигурных скобок {}
создаст пустой словарь (dictionary)
, а не множество.
empty_set = set()
print(empty_set) # Вывод: set()
2.3 Список методов
Множества в Python обладают набором методов, позволяющих эффективно
управлять коллекциями данных. Вот некоторые из самых популярных методов
класса set
:
Метод | Описание |
---|---|
add() |
Добавляет элемент в множество |
remove() |
Удаляет элемент из множества, вызывает ошибку если элемента нет |
discard() |
Удаляет элемент из множества, ошибки не возникает если элемента нет |
pop() |
Удаляет и возвращает случайный элемент, вызывает ошибку если множество пустое |
clear() |
Удаляет все элементы из множества |
union() |
Возвращает объединение множеств |
intersection() |
Возвращает пересечение множеств |
difference() |
Возвращает разность множеств |
symmetric_difference() |
Возвращает симметрическую разность множеств |
update() |
Добавляет элементы из другого множества или итерируемого объекта в текущее множество/td> |
Ниже мы разберем нюансы работы всех этих методов и даже немножко больше.