Python program: Generating power set of a frozenset
4. Frozenset Power Set
Write a Python program that implements a function to generate the power set (set of all subsets) of a given frozenset.
Sample Solution:
Code:
def powerset(frozenset_input):
power_set = [[]]
for element in frozenset_input:
new_subsets = []
for subset in power_set:
new_subset = subset + [element]
new_subsets.append(new_subset)
power_set.extend(new_subsets)
return [frozenset(subset) for subset in power_set]
def main():
frozen_set = frozenset([1, 2, 3, 4])
print("Original Power set")
power_set_result = powerset(frozen_set)
print("Power Set:")
for subset in power_set_result:
print(subset)
if __name__ == "__main__":
main()
Output:
Original Power set Power Set: frozenset() frozenset({1}) frozenset({2}) frozenset({1, 2}) frozenset({3}) frozenset({1, 3}) frozenset({2, 3}) frozenset({1, 2, 3}) frozenset({4}) frozenset({1, 4}) frozenset({2, 4}) frozenset({1, 2, 4}) frozenset({3, 4}) frozenset({1, 3, 4}) frozenset({2, 3, 4}) frozenset({1, 2, 3, 4})
Flowchart:

For more Practice: Solve these Related Problems:
- Write a Python program to generate the power set of a given frozenset using recursion and then print all the subsets.
- Write a Python script to compute the power set of a frozenset iteratively using bit manipulation, and then display the total number of subsets.
- Write a Python function that returns the power set of a frozenset as a frozenset of frozensets, ensuring immutability throughout the process.
- Write a Python program to generate the power set of a frozenset and compare the resulting number of subsets with 2 raised to the power of the frozenset’s length.
Python Code Editor :
Previous: Python frozenset symmetric difference: Function and example.
Next: Python power set generator for frozensets: Code and example.
What is the difficulty level of this exercise?
Test your Programming skills with w3resource's quiz.