CodeGym /Kurslar /Python SELF AZ /Dəyişməz cəm — frozenset

Dəyişməz cəm — frozenset

Python SELF AZ
Səviyyə , Dərs
Mövcuddur

8.1 set-tuple

frozenset koleksiyasıset-in dəyişməz analoqudur. Bu, çoxluğun bütün imkanlarını təqdim edir, lakin onun elementlərini yaradıldıqdan sonra dəyişməyə imkan vermir. frozenset o hallarda faydalıdır ki, unikal elementləri saxlamaq və çoxluğun dəyişməyəcəyinə zəmanət vermək tələb olunur.

frozenset-in yaradılması

frozenset-i yaratmaq üçün frozenset() funksiyasından istifadə etmək olar, ona iterasiya edilə bilən obyekt (list, tuple, string və s.) ötürərək.

Nümunələr:

frozenset-in list-dən yaradılması


# frozenset-in list-dən yaradılması
fset1 = frozenset([1, 2, 3, 4])
print(fset1)  # Çıxış: frozenset({1, 2, 3, 4})

frozenset-in string-dən yaradılması


# frozenset-in string-dən yaradılması
fset2 = frozenset("hello")
print(fset2)  # Çıxış: frozenset({'h', 'e', 'l', 'o'})

Boş frozenset-in yaradılması


# Boş frozenset-in yaradılması
fset3 = frozenset()
print(fset3)  # Çıxış: frozenset()
        

8.2 Əsas frozenset metodları

frozenset dəyişkən cəmlər üçün mövcud olan metodların əksəriyyətini dəstəkləyir (set), amma o dəyişməz olduğu üçün, cəmi dəyişən metodlar mövcud deyil.

Nümunələr:

Cəmlərin birləşdirilməsi (union)


fset1 = frozenset([1, 2, 3, 4])
fset2 = frozenset([3, 4, 5, 6])
            
# Cəmlərin birləşdirilməsi (union)
print(fset1 | fset2)  # Çıxış: frozenset({1, 2, 3, 4, 5, 6})
print(fset1.union(fset2))  # Çıxış: frozenset({1, 2, 3, 4, 5, 6})
        

Cəmlərin kəsişməsi (intersection)


fset1 = frozenset([1, 2, 3, 4])
fset2 = frozenset([3, 4, 5, 6])
            
# Cəmlərin kəsişməsi (intersection)
print(fset1 & fset2)  # Çıxış: frozenset({3, 4})
print(fset1.intersection(fset2))  # Çıxış: frozenset({3, 4})
        

Cəmlərin fərqi (difference)


fset1 = frozenset([1, 2, 3, 4])
fset2 = frozenset([3, 4, 5, 6])
            
# Cəmlərin fərqi (difference) 
print(fset1 - fset2)  # Çıxış: frozenset({1, 2})
print(fset1.difference(fset2))  # Çıxış: frozenset({1, 2})
        

Simmetrik fərq (symmetric difference)


fset1 = frozenset([1, 2, 3, 4])
fset2 = frozenset([3, 4, 5, 6])
            
# Simmetrik fərq (symmetric difference)
print(fset1 ^ fset2)  # Çıxış: frozenset({1, 2, 5, 6})
print(fset1.symmetric_difference(fset2))  # Çıxış: frozenset({1, 2, 5, 6})
        

8.3 frozenset-in tətbiqi

frozenset aşağıdakı hallarda faydalıdır:

Sözlüklərdə açar kimi istifadə:

frozenset dəyişməz olduğundan, onu sözlüklərdə açar kimi istifadə etmək olar.


fset1 = frozenset([1, 2, 3])
fset2 = frozenset([3, 4, 5])
        
d = {fset1: "birinci", fset2: "ikinci"}
print(d)  # Çıxış: {frozenset({1, 2, 3}): 'birinci', frozenset({3, 4, 5}): 'ikinci'}
    

Dəyişməz çoxluqların saxlanması:

Əgər gələcəkdə dəyişdirilməyəcək unikal elementlərdən ibarət çoxluq yaratmaq lazımdırsa, frozenset — əla seçimdir.

Verilənlərin təhlükəsizliyi:

frozenset-dən istifadə etmək, proqramın icrası zamanı məlumatların təsadüfən dəyişdirilməyəcəyinə zəmanət verir.

1
Опрос
Sətirlərlə İşləmə,  10 уровень,  6 лекция
недоступен
Sətirlərlə İşləmə
Sətirlərlə İşləmə
Şərhlər
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION