How to get all subsets of a set? (powerset)

前端 未结 28 2478
庸人自扰
庸人自扰 2020-11-22 05:18

Given a set

{0, 1, 2, 3}

How can I produce the subsets:

[set(),
 {0},
 {1},
 {2},
 {3},
 {0, 1},
 {0, 2},
 {0, 3},
 {1, 2}         


        
28条回答
  •  抹茶落季
    2020-11-22 05:33

    def powerset(lst):
        return reduce(lambda result, x: result + [subset + [x] for subset in result],
                      lst, [[]])
    

提交回复
热议问题