给定整数变量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:......
我做错了什么?