Table of contents

Frozen set methods

Creates a shallow copy of the frozenset (or set), returning a new frozenset (or set) with the same elements.

Syntax: frozensetobj2 = frozensetobj1.copy()

  • Since frozenset is immutable, the copy is identical but independent (no practical difference in immutability).
  • For set, the copy is mutable and can be modified independently.
fs1 = frozenset([1, 2, 3]) fs2 = fs1.copy() print(fs2) # frozenset({1, 2, 3}) # fs2 is a new frozenset, but immutable like fs1

Returns True if two frozenset objects (or set objects) have no common elements; otherwise, False.

Syntax: frozensetobj1.isdisjoint(frozensetobj2).

fs1 = frozenset([1, 2, 3]) fs2 = frozenset([4, 5, 6]) fs3 = frozenset([2, 7, 8]) print(fs1.isdisjoint(fs2)) # True (no common elements) print(fs1.isdisjoint(fs3)) # False (2 is common)

Returns True if frozensetobj1 contains all elements of frozensetobj2; otherwise, False.

Syntax: frozensetobj1.issuperset(frozensetobj2)

fs1 = frozenset([1, 2, 3, 4]) fs2 = frozenset([1, 2]) print(fs1.issuperset(fs2)) # True (fs1 contains all of fs2) print(fs2.issuperset(fs1)) # False

Returns True if all elements of frozensetobj1 are in frozensetobj2; otherwise, False.

Syntax: frozensetobj1.issubset(frozensetobj2).

fs1 = frozenset([1, 2]) fs2 = frozenset([1, 2, 3, 4]) print(fs1.issubset(fs2)) # True (all of fs1 in fs2) print(fs2.issubset(fs1)) # False

 Returns a new frozenset (or set) containing all unique elements from frozensetobj1 and frozensetobj2.

Syntax: frozensetobj3 = frozensetobj1.union(frozensetobj2).

fs1 = frozenset([1, 2, 3]) fs2 = frozenset([3, 4, 5]) fs3 = fs1.union(fs2) print(fs3) # frozenset({1, 2, 3, 4, 5}) print(fs1 | fs2) # Same result

Returns a new frozenset (or set) containing only the common elements between frozensetobj1 and frozensetobj2.

Syntax: frozensetobj3 = frozensetobj1.intersection(frozensetobj2).

fs1 = frozenset([1, 2, 3]) fs2 = frozenset([2, 3, 4]) fs3 = fs1.intersection(fs2) print(fs3) # frozenset({2, 3})

Alternative: Use & operator (e.g., fs1 & fs2).

fs1 = frozenset([1, 2, 3]) fs2 = frozenset([2, 3, 4]) print(fs1 & fs2) # result {2,3}

Returns a new frozenset (or set) containing elements in frozensetobj1 that are not in frozensetobj2.

Syntax: frozensetobj3 = frozensetobj1.difference(frozensetobj2)

fs1 = frozenset([1, 2, 3]) fs2 = frozenset([2, 3, 4]) fs3 = fs1.difference(fs2) print(fs3) # frozenset({1})

Alternative: Use - operator (e.g., fs1 - fs2.

fs1 = frozenset([1, 2, 3]) fs2 = frozenset([2, 3, 4]) print(fs1 - fs2) # result {}

Returns a new frozenset (or set) containing elements that are in either frozensetobj1 or frozensetobj2, but not in both.

Syntax: frozensetobj3 = frozensetobj1.symmetric_difference(frozensetobj2).

fs1 = frozenset([1, 2, 3]) fs2 = frozenset([2, 3, 4]) fs3 = fs1.symmetric_difference(fs2) print(fs3) # frozenset({1, 4})

Alternative: Use ^ operator (e.g., fs1 ^ fs2).

fs1 = frozenset([1, 2, 3]) fs2 = frozenset([2, 3, 4]) print(fs1 ^ fs2) # result {1,4}