如何获取集合python的所有子集
我必须定义一个像3这样的数字,然后把它设为一个集合如何获取集合python的所有子集,python,python-3.x,Python,Python 3.x,我必须定义一个像3这样的数字,然后把它设为一个集合 x = set(range(1,n+1)) 然后显示此集合的所有子集: {} {1} {1, 2} {1, 2, 3} {1, 3} {2} {2, 3} {3} 您正在寻找上述简单的解决方案吗?我无法使用任何库来实现此目的loops@mujad然后在问题中指定您最近的评论,因为这是一个条件。是!但这不会返回{} def get_result(x): len_x = len(x) res = [] for i in
x = set(range(1,n+1))
然后显示此集合的所有子集:
{}
{1}
{1, 2}
{1, 2, 3}
{1, 3}
{2}
{2, 3}
{3}
您正在寻找上述简单的解决方案吗?我无法使用任何库来实现此目的loops@mujad然后在问题中指定您最近的评论,因为这是一个条件。是!但这不会返回{}
def get_result(x):
len_x = len(x)
res = []
for i in range(0, 2**(len_x)):
res.append(take(x, i))
print("count:{}".format(len(res)))
return res
def take(x, i):
res = set()
idx = 1
while i:
if i & 1:
res.add(idx)
idx += 1
i >>= 1
return res
print(get_result({1, 2, 3}))
print(get_result({1, 2, 3, 4}))