Функция frozenset () возвращает неизменяемый объект frozenset, инициализированный элементами из данного итеративного объекта.
Замороженный набор - это просто неизменная версия объекта набора Python. Хотя элементы набора можно изменить в любое время, элементы замороженного набора остаются неизменными после создания.
Благодаря этому замороженные наборы можно использовать как ключи в Словаре или как элементы другого набора. Но, как и наборы, он не упорядочен (элементы могут быть установлены по любому индексу).
Синтаксис frozenset()
функции:
frozenset ((итерация))
Frozenset () Параметры
frozenset()
Функция принимает один параметр:
- iterable (Необязательно) - итерабельность, содержащая элементы для инициализации Frozenset.
Iterable может быть установлен, словарь, кортеж и т. Д.
Возвращаемое значение от frozenset ()
В frozenset()
функции возвращает неизменной frozenset
инициализировано с элементами из заданного Iterable.
Если параметры не переданы, возвращается пустое значение frozenset
.
Пример 1: Работа Python frozenset ()
# tuple of vowels vowels = ('a', 'e', 'i', 'o', 'u') fSet = frozenset(vowels) print('The frozen set is:', fSet) print('The empty frozen set is:', frozenset()) # frozensets are immutable fSet.add('v')
Вывод
Замороженный набор: frozenset (('a', 'o', 'u', 'i', 'e')) Пустой замороженный набор: frozenset () Traceback (последний вызов последним): File ", строка 8, в fSet.add ('v') AttributeError: объект 'frozenset' не имеет атрибута 'add'
Пример 2: frozenset () для словаря
Когда вы используете словарь как итерацию для замороженного набора, для создания набора нужны только ключи словаря.
# random dictionary person = ("name": "John", "age": 23, "sex": "male") fSet = frozenset(person) print('The frozen set is:', fSet)
Вывод
Замороженный набор: frozenset (('имя', 'пол', 'возраст'))
Frozenset операции
Как и обычные наборы, frozenset могут также выполнять различные операции , такие как copy
, difference
, intersection
, symmetric_difference
и union
.
# Frozensets # initialize A and B A = frozenset((1, 2, 3, 4)) B = frozenset((3, 4, 5, 6)) # copying a frozenset C = A.copy() # Output: frozenset((1, 2, 3, 4)) print(C) # union print(A.union(B)) # Output: frozenset((1, 2, 3, 4, 5, 6)) # intersection print(A.intersection(B)) # Output: frozenset((3, 4)) # difference print(A.difference(B)) # Output: frozenset((1, 2)) # symmetric_difference print(A.symmetric_difference(B)) # Output: frozenset((1, 2, 5, 6))
Вывод
frozenset ((1, 2, 3, 4)) frozenset ((1, 2, 3, 4, 5, 6)) frozenset ((3, 4)) frozenset ((1, 2)) frozenset ((1, 2) , 5, 6))
Кроме того , другие методы , такие как набор isdisjoint
, issubset
и issuperset
также доступны.
# Frozensets # initialize A, B and C A = frozenset((1, 2, 3, 4)) B = frozenset((3, 4, 5, 6)) C = frozenset((5, 6)) # isdisjoint() method print(A.isdisjoint(C)) # Output: True # issubset() method print(C.issubset(B)) # Output: True # issuperset() method print(B.issuperset(C)) # Output: True
Вывод
Правда правда правда