admin 管理员组

文章数量: 887021

python abc返回[a,b,c,ab,ac,bc,abc]

输入char[] = {a,b,c}
组合情况:a,b,c,ab,ac,bc,abc
返回:String[

def quanpailie(s):if len(s) <= 1:return [s]total = []lens = len(s)for i in range(lens):total.append(s[i])for j in range(i + 1, lens):##因为j只能到lens -1,所以需要j+1来取到最后一个数total.append(s[i:j+1])  return totalif __name__ == '__main__':print(quanpailie("aab"))

返回:['a', 'ab', 'abc', 'b', 'bc', 'c']

如果需要排成a,b,c,ab,ac,bc,abc,则在return之前,执行

reverse= False表示正序,为True表示逆序。

total = sorted(total, key=lambda i: len(i), reverse=False)

本文标签: python abc返回a b c AB Ac