A função frozenset () retorna um objeto frozenset imutável inicializado com elementos do iterável fornecido.
Conjunto congelado é apenas uma versão imutável de um objeto conjunto Python. Embora os elementos de um conjunto possam ser modificados a qualquer momento, os elementos do conjunto congelado permanecem os mesmos após a criação.
Devido a isso, os conjuntos congelados podem ser usados como chaves no Dicionário ou como elementos de outro conjunto. Mas, como os conjuntos, não é ordenado (os elementos podem ser definidos em qualquer índice).
A sintaxe da frozenset()
função é:
frozenset ((iterável))
Parâmetros frozenset ()
A frozenset()
função tem um único parâmetro:
- iterable (Opcional) - o iterable que contém elementos para inicializar o frozenset.
Iterable pode ser definido, dicionário, tupla, etc.
Valor de retorno de frozenset ()
A frozenset()
função retorna um imutável frozenset
inicializado com elementos do iterável fornecido.
Se nenhum parâmetro for passado, ele retorna um vazio frozenset
.
Exemplo 1: Trabalho com 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')
Resultado
O conjunto congelado é: frozenset (('a', 'o', 'u', 'i', 'e')) O conjunto congelado vazio é: frozenset () Traceback (última chamada mais recente): Arquivo ", linha 8, em fSet.add ('v') AttributeError: o objeto 'frozenset' não tem atributo 'add'
Exemplo 2: frozenset () para Dicionário
Quando você usa um dicionário como iterável para um conjunto congelado, são necessárias apenas chaves do dicionário para criar o conjunto.
# random dictionary person = ("name": "John", "age": 23, "sex": "male") fSet = frozenset(person) print('The frozen set is:', fSet)
Resultado
O conjunto congelado é: frozenset (('nome', 'sexo', 'idade'))
Operações Frozenset
Como conjuntos normais, frozenset também pode executar diferentes operações como copy
, difference
, intersection
, symmetric_difference
, e 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))
Resultado
frozenset ((1, 2, 3, 4)) frozenset ((1, 2, 3, 4, 5, 6)) frozenset ((3, 4)) frozenset ((1, 2)) frozenset ((1, 2 , 5, 6))
Da mesma forma, outros métodos set gosto isdisjoint
, issubset
e issuperset
também estão disponíveis.
# 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
Resultado
True True True