【发布时间】:2020-05-25 00:13:42
【问题描述】:
有没有什么方法可以像逆向函数一样拥有动态的循环数?
字母是字符上的数组['a','b','c','d'] 和
letterdict 是字典{'a':['b','c'],'b':['a'],'c':['d'],'d':['b','c','d']
我的代码是 n=13:
for x in letters:
for k1 in letterdict[x]:
for k2 in letterdict[k1]:
for k3 in letterdict[k2]:
for k4 in letterdict[k3]:
for k5 in letterdict[k4]:
for k6 in letterdict[k5]:
for k7 in letterdict[k6]:
for k8 in letterdict[k7]:
for k9 in letterdict[k8]:
for k10 in letterdict[k9]:
for k11 in letterdict[k10]:
for k12 in letterdict[k11]:
for k13 in letterdict[k12]:
word=""
word=x+k1+k2+k3+k4+k5+k6+k7+k8+k9+k10+k11+k12+k13
print(word)
但我希望 n 个循环使用相同的代码 像这样:
对于 n=3
for x in letters:
for k1 in letterdict[x]:
for k2 in letterdict[k1]:
for k3 in letterdict[k2]:
word=""
word=x+k1+k2+k3
print(word)
【问题讨论】:
-
解决方案是递归,但是代码的目的是什么?
-
递归函数可以在这里使用。
标签: python loops dictionary nested combinations