【发布时间】:2020-05-05 18:29:34
【问题描述】:
我们需要创建一个函数,使 A、B 和 C 的所有组合具有 n。我尝试制作一些东西,我只让它适用于 0、1 和 2,但我不知道如何使用递归或嵌套循环来制作它。
n=3 的示例:
AAA,BAA,CAA,ABA,BBA,CBA,ACA,BCA,CCA,AAB,BAB,CAB,ABB,BBB,CBB,ACB,BCB,CCB,AAC,BAC,CAC,ABC,BBC,CBC , ACC, BCC, CCC
def generator (n):
complete = [ ]
words = ["A", "B", "C",]
if (n==1):
for word1 in words:
complete.append(word1)
return complete
elif (n==0):
return complete
else:
for word1 in words:
for word2 in words:
complete.append(word1+word2)
return complete
n = int(input("Lenght n: "))
complete = (generator(n))
print(', '.join(complete))
【问题讨论】:
-
list(itertools.product("abc", repeat=3))?