【发布时间】:2021-04-06 03:56:51
【问题描述】:
我对 python 中更“中间”的概念相当陌生。回顾一下我“学到”的东西,我决定制作一个组合生成器。基本上,您提供一些输入,然后它应该返回它的每个组合。 (例如,我输入“mark”,它应该返回“kram”、“makr”等)
但我怀疑“组合”功能有问题,我无法完全弄清楚原因。
from itertools import combinations
def combo_generator():
user_string = {}
for l in input("Enter a string for combo: "):
combo = combinations(user_string, 8)
user_string[l] = 1
if user_string[l] >= 8:
print("Too much strings! Enter less than 10 letters.")
combo_generator()
else:
print(list(combo))
combo_generator()
因为这里是损坏的输出:
Enter a string for combo: "mark"
[]
[]
[]
[]
任何帮助都可以。谢谢。
【问题讨论】:
-
请阅读How to debug small programs。您还可以使用Python-Tutor,它有助于逐步可视化代码的执行。
-
我会读的。谢谢
-
确实有帮助!
-
它有帮助。谢谢,我得完善我的代码。
标签: python python-3.x combinations