我实际上正在制作一个使用最小长度&最大长度,然后是要使用的字符,然后在给定的条件下,它将所有可能的组合写入单词列表;字符
我的代码是:
import itertools
min_len = int(input("Min Len: "))
max_len = int(input("Max Len: "))
characters = str(input("Characters To use: "))
for n in range(min_len, max_len + 1):
for xs in itertools.product(characters, repeat=n):
word = ''.join(xs)
print(f"Writing {word}")
我在Python 3.8上,Linux
感谢您的提前帮助!
给定w
个字符,您可以创建长度为n
的w**n
字符串。所以您正在寻找w**min_length + ...... + w**max_length
此代码将工作。。。
from itertools import chain, combinations
min_len = int(input("Min Len: "))
max_len = int(input("Max Len: "))
characters = str(input("Characters To use: "))
combination = list(chain.from_iterable(combinations(characters, i) for i in range(min_len, max_len+1)))
for comb in combination:
print("".join(comb))