‘frozenset’ function takes an iterable as argument and return an immutable one.
Syntax
frozenset(iterable_object_name)
Example
vowels = {'a', 'e', 'i', 'o', 'u'}
fset = frozenset(vowels)
frozenset_1.py
vowels = {'a', 'e', 'i', 'o', 'u'}
fset = frozenset(vowels)
print('vowels : ', vowels)
print('fset : ', fset)
Output
vowels : {'i', 'u', 'e', 'a', 'o'} fset : frozenset({'i', 'u', 'e', 'a', 'o'})
frozenset for a dictionary
When you pass a dictionary as an argument to frozenset, it construct the set using dictionary keys.
frozen_set_2.py
emp = {'id' : 1, 'name' : 'Krishna'}
fset = frozenset(emp)
print('emp : ', emp)
print('fset : ', fset)
Output
emp : {'id': 1, 'name': 'Krishna'} fset : frozenset({'name', 'id'})
Since frozenset instances are immutable, you can’t perform any update and delete operations on a frozenset.
frozen_set_3.py
vowels = {'a', 'e', 'i', 'o', 'u'}
fset = frozenset(vowels)
print('vowels : ', vowels)
print('fset : ', fset)
vowels.remove('e')
print('vowels : ', vowels)
fset.remove('e')
print('fset : ', fset)
Output
vowels : {'o', 'e', 'u', 'i', 'a'} fset : frozenset({'o', 'e', 'u', 'i', 'a'}) vowels : {'o', 'u', 'i', 'a'} Traceback (most recent call last): File "/Users/krishna/built-in-functions/frozen_set_3.py", line 10, in <module> fset.remove('e') AttributeError: 'frozenset' object has no attribute 'remove'
Like normal sets, you can use frozenset while doing below operations.
a. copy,
b. difference,
c. intersection,
d. symmetric_difference, and
e. union
frozen_set_4.py
evenNumbers={2, 4, 6, 8, 8, 4, 10}
oddNumbers={1, 3, 5, 7, 9}
powersOf2={1, 2, 4, 8, 16}
unionOfSets = evenNumbers|oddNumbers
intersectionOfSets = evenNumbers&powersOf2
differenceBetweenSets = evenNumbers-powersOf2
copyOfSet = evenNumbers.copy()
print("unionOfSets : ", unionOfSets)
print("intersectionOfSets : ", intersectionOfSets)
print("differenceBetweenSets : ", differenceBetweenSets)
print("copyOfSet : ", copyOfSet)
Output
unionOfSets : {1, 2, 3, 4, 5, 6, 7, 8, 9, 10} intersectionOfSets : {8, 2, 4} differenceBetweenSets : {10, 6} copyOfSet : {2, 4, 6, 8, 10}
Previous Next Home
No comments:
Post a Comment