这个for循环中的错误在哪里生成有序非重复组合的列表?

时间:2015-04-30 22:20:07

标签: python loops

给定整数变量n,比如3,我想获得这些组合: [1,2,3,12,13,23,123]并将它们保存在列表中。 这就是我写的:

cmb = []
for i in xrange(1,n+1):
    for j in xrange(i,n+1):
        cmb.extend(list(itertools.combinations(xrange(i,n+1),j)))

但是当我打印时,我会得到一些不需要的和重复的元组

n = 3:[(1,),(2,),(3,),(1,2),(1,3),(2,3),(1,2,3),(2,3)]

n = 4:[(1,),(2,),(3,),(4,),(1,2),(1,3),(1,4),(2,3) ),(2,4),(3,4),(1,2,3),(1,2,4),(1,3,4),(2,3,4),(1,2) ,3,4),(2,3),(2,4),(3,4),(2,3,4)]

n = 5:......

我做错了什么?

0 个答案:

没有答案