Python 3.8-如何获得最小长度和最大长度的总组合



我实际上正在制作一个使用最小长度&最大长度,然后是要使用的字符,然后在给定的条件下,它将所有可能的组合写入单词列表;字符

我的代码是:

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个字符,您可以创建长度为nw**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))

相关内容

  • 没有找到相关文章

最新更新