Funkcja frozenset () zwraca niezmienny obiekt frozenset zainicjowany elementami z podanej iterowalnej.
Zbiór zamrożony to po prostu niezmienna wersja obiektu zestawu w języku Python. Podczas gdy elementy zestawu można modyfikować w dowolnym momencie, elementy zamrożonego zestawu pozostają takie same po utworzeniu.
Dzięki temu zamrożone zestawy mogą być używane jako klucze w Słowniku lub jako elementy innego zestawu. Ale podobnie jak zbiory, nie jest uporządkowany (elementy można ustawić w dowolnym indeksie).
Składnia frozenset()
funkcji to:
frozenset ((iterowalne))
Frozenset () Parametry
frozenset()
Funkcja przyjmuje jeden parametr:
- iterowalny (opcjonalnie) - iterowalny, który zawiera elementy do zainicjowania zestawu zamrożonego.
Można ustawić iterowalność, słownik, krotkę itp.
Wartość zwracana z frozenset ()
Te frozenset()
funkcja zwraca niezmienne frozenset
inicjowany elementów z danym Iterable.
Jeśli nie zostaną przekazane żadne parametry, zwraca wartość pustą frozenset
.
Przykład 1: Działanie Pythona 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')
Wynik
Zamrożony zestaw to: frozenset (('a', 'o', 'u', 'i', 'e')) Pusty zamrożony zestaw to: frozenset () Traceback (ostatnie wywołanie ostatnie): Plik ", wiersz 8, w fSet.add ('v') AttributeError: obiekt 'frozenset' nie ma atrybutu 'add'
Przykład 2: frozenset () dla słownika
Gdy używasz słownika jako iterowalnego zestawu zamrożonego, do utworzenia zestawu potrzebne są tylko klucze słownika.
# random dictionary person = ("name": "John", "age": 23, "sex": "male") fSet = frozenset(person) print('The frozen set is:', fSet)
Wynik
Zamrożony zestaw to: frozenset (('imię', 'płeć', 'wiek'))
Operacje Frozenset
Jak normalne zestawach frozenset może również wykonywać różne operacje, takie jak copy
, difference
, intersection
, symmetric_difference
, i 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))
Wynik
frozenset ((1, 2, 3, 4)) frozenset ((1, 2, 3, 4, 5, 6)) frozenset ((3, 4)) frozenset ((1, 2)) frozenset ((1, 2) , 5, 6))
Podobnie, drugi zestaw metod, takich jak isdisjoint
, issubset
i issuperset
są również dostępne.
# 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
Wynik
True True True