编辑代码

depth=6
ls=['a','b','c','d','e','f','g','h','i']
lp=[]
def comb(i,depth):
    if depth==0:
        print(lp)
        return 
    for i in range(i,len(ls)):
        lp.append(ls[i])
        comb(i+1,depth-1)
        lp.pop()
comb(0,depth)


def perm(ls,l,r):
    if l>=r:
        print(ls)
    else:
        for i in range(l,r+1):
            ls[i],ls[l]=ls[l],ls[i]
            perm(ls,l+1,r)
            ls[i],ls[l]=ls[l],ls[i]
perm(ls,0,len(ls)-1)