Функция frozenset в Python создает неизменяемое множество из переданного итерируемого объекта. В отличие от обычного множества (set), элементы frozenset нельзя изменять после создания, что делает его полезным для использования в качестве ключей в словарях или элементов других множеств.
Содержание
- Синтаксис
- Параметры
- Возвращаемое значение
- Примеры использования
- Пример 1: Создание пустого frozenset
- Пример 2: Создание frozenset из списка
- Пример 3: Создание frozenset из строки
- Пример 4: Создание frozenset из множества
- Пример 5: Использование frozenset в качестве ключа словаря
- Операции с frozenset
- Объединение (union)
- Пересечение (intersection)
- Разность (difference)
- Симметрическая разность (symmetric_difference)
- Важные замечания
Синтаксис
frozenset([iterable])
Параметры
iterable: Необязательный параметр. Итерируемый объект (например, список, кортеж, строка, множество), из которого будет создано множество. Если не указан, создается пустое множество.
Возвращаемое значение
Функция возвращает объект типа frozenset, содержащий уникальные элементы из итерируемого объекта.
Примеры использования
Пример 1: Создание пустого frozenset
empty_frozenset = frozenset()
print(empty_frozenset) # Вывод: frozenset()
Пример 2: Создание frozenset из списка
numbers = [1, 2, 3, 4, 5]
frozen_numbers = frozenset(numbers)
print(frozen_numbers) # Вывод: frozenset({1, 2, 3, 4, 5})
Пример 3: Создание frozenset из строки
string = "hello"
frozen_string = frozenset(string)
print(frozen_string) # Вывод: frozenset({'e', 'h', 'l', 'o'})
Пример 4: Создание frozenset из множества
set_data = {1, 2, 3}
frozen_set = frozenset(set_data)
print(frozen_set) # Вывод: frozenset({1, 2, 3})
Пример 5: Использование frozenset в качестве ключа словаря
frozen_key = frozenset([1, 2, 3])
dictionary = {frozen_key: "value"}
print(dictionary) # Вывод: {frozenset({1, 2, 3}): 'value'}
Операции с frozenset
Объединение (union)
a = frozenset([1, 2, 3])
b = frozenset([3, 4, 5])
result = a | b
print(result) # Вывод: frozenset({1, 2, 3, 4, 5})
Пересечение (intersection)
a = frozenset([1, 2, 3])
b = frozenset([3, 4, 5])
result = a & b
print(result) # Вывод: frozenset({3})
Разность (difference)
a = frozenset([1, 2, 3])
b = frozenset([3, 4, 5])
result = a - b
print(result) # Вывод: frozenset({1, 2})
Симметрическая разность (symmetric_difference)
a = frozenset([1, 2, 3])
b = frozenset([3, 4, 5])
result = a ^ b
print(result) # Вывод: frozenset({1, 2, 4, 5})
Важные замечания
- Неизменяемость: Элементы
frozensetне могут быть изменены после создания. Это делает его безопасным для использования в ситуациях, требующих неизменяемых коллекций. - Уникальность элементов: Как и обычное множество,
frozensetхранит только уникальные элементы, исключая дубликаты. - Хэшируемость: Поскольку
frozensetнеизменяем, он может быть использован в качестве ключа в словарях или элемента в других множествах.








