В Python множество (set) - это неупорядоченная коллекция уникальных элементов. Это значит, что множество не может содержать повторяющиеся значения, и порядок элементов в множестве не гарантируется и может изменяться со временем.
Основные характеристики множеств:
Создание множества:
{}
: my_set = {1, 2, 3}
set()
: my_set = set([1, 2, 3])
или my_set = set((1, 2, 3))
или my_set = set("abc")
set()
, так как {}
создаст пустой словарь.Основные операции над множествами:
add(element)
: Добавляет элемент в множество.remove(element)
: Удаляет элемент из множества. Вызывает ошибку, если элемента нет в множестве.discard(element)
: Удаляет элемент из множества, если он там есть. Не вызывает ошибку, если элемента нет.pop()
: Удаляет и возвращает произвольный элемент из множества.clear()
: Удаляет все элементы из множества.union(other_set)
или |
: Возвращает объединение двух множеств.intersection(other_set)
или &
: Возвращает пересечение двух множеств.difference(other_set)
или -
: Возвращает разность двух множеств.symmetric_difference(other_set)
или ^
: Возвращает симметричную разность двух множеств (элементы, которые есть либо в одном, либо в другом множестве, но не в обоих).len(my_set)
: Возвращает количество элементов в множестве.in
: Проверяет, содержится ли элемент в множестве. Например: if 1 in my_set: ...
Пример использования:
# Создание множества
my_set = {1, 2, 3, 3, 4, 5} # Дубликат '3' будет удален
# Добавление элемента
my_set.add(6)
# Удаление элемента
my_set.remove(1) # Удалит '1'
#my_set.remove(10) # Вызовет ошибку KeyError, если 10 нет во множестве
my_set.discard(10) # Не вызовет ошибку, если 10 нет во множестве
# Операции над множествами
set1 = {1, 2, 3}
set2 = {3, 4, 5}
union_set = set1.union(set2) # {1, 2, 3, 4, 5}
intersection_set = set1.intersection(set2) # {3}
Когда использовать множества?
Множества полезны, когда вам нужно хранить коллекцию уникальных элементов и быстро проверять наличие элемента в этой коллекции. Они оптимизированы для операций поиска и сравнения, таких как проверка на принадлежность, объединение, пересечение и разность. Множества обычно используются для удаления дубликатов из списков, проверки уникальности данных и выполнения теоретико-множественных операций.