Python frozenset ()

Функция 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

Вывод

 Правда правда правда

Интересные статьи...