Funktio frozenset () palauttaa muuttumattoman frozenset-objektin, joka on alustettu annetuilla iterable-elementeillä.
Jäädytetty joukko on vain muuttumaton versio Python-joukko-objektista. Vaikka joukon elementtejä voidaan muokata milloin tahansa, jäädytetyn joukon elementit pysyvät samana luomisen jälkeen.
Tämän vuoksi jäädytettyjä sarjoja voidaan käyttää näppäimistön avainsanoina tai toisen sarjan elementteinä. Mutta kuten sarjaa, sitä ei myöskään järjestetä (elementit voidaan asettaa missä tahansa hakemistossa).
Toiminnon syntaksi frozenset()
on:
frozenset ((toistettava))
frozenset () -parametrit
frozenset()
Toiminto ottaa yhden parametrin:
- iterable (valinnainen) - iterable, joka sisältää elementtejä frozensetin alustamiseksi.
Iterable voidaan asettaa, sanakirja, dupleksi jne.
Palautusarvo frozensetistä ()
frozenset()
Funktio palauttaa muuttumaton frozenset
alustetaan elementtejä annetaan iterable.
Jos parametreja ei välitetä, se palauttaa tyhjän frozenset
.
Esimerkki 1: Python frozensetin () käyttö
# 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')
Tuotos
Jäädytetty sarja on: frozenset (('' a ',' o ',' u ',' i ',' e ')) Tyhjä jäädytetty sarja on: frozenset () Traceback (viimeisin puhelu viimeisin): tiedosto ", rivi 8, tiedostossa fSet.add ('v') AttributeError: 'frozenset' -objektilla ei ole attribuuttia 'add'
Esimerkki 2: frozenset () sanastolle
Kun käytät sanakirjaa pysäytetyn ryhmän iteroitavana, sarjan luominen vaatii vain sanakirjan avaimet.
# random dictionary person = ("name": "John", "age": 23, "sex": "male") fSet = frozenset(person) print('The frozen set is:', fSet)
Tuotos
Jäädytetty sarja on: frozenset (('nimi', 'sukupuoli', 'ikä'))
Frozenset-operaatiot
Kuten normaali asetetaan, frozenset voi myös suorittaa erilaisia toimintoja, kuten copy
, difference
, intersection
, symmetric_difference
, ja 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))
Tuotos
frozenset ((1, 2, 3, 4)) frozenset ((1, 2, 3, 4, 5, 6)) frozenset ((3, 4)) frozenset ((1, 2)) frozenset ((1, 2) , 5, 6))
Vastaavasti, toinen sarja menetelmiä haluavat isdisjoint
, issubset
ja issuperset
ovat myös saatavilla.
# 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
Tuotos
True True True