gpt4 book ai didi

python - 内置用于创建长度为 n 的字符集的排列?

转载 作者:太空宇宙 更新时间:2023-11-03 13:58:02 24 4
gpt4 key购买 nike

我知道 itertools.permutations(),但我要问的内容略有不同。

给定字符列表:

["*", "/", "+", "-"]

是否有一个内置程序可以创建所有 N 长度排列的给定字符的列表?例如,如果我想要长度为 7:

["*", "*", "*", "*", "*", "*", "*"]
["*", "*", "*", "*", "*", "*", "/"]
["*", "*", "*", "*", "*", "*", "+"]
... <after much processing> ...
["-", "-", "-", "-", "-", "-", "/"]
["-", "-", "-", "-", "-", "-", "+"]
["-", "-", "-", "-", "-", "-", "-"]

就目前而言,我编写了自己的递归过程来生成它们,但我确信我缺少一些神奇的单行调用。

最佳答案

您要查找的是 7 个 ["*", "/", "+", "-"] 列表的笛卡尔积。 itertools.product正是为了这个目的而采用 repeat 参数:

for row in itertools.product(["*", "/", "+", "-"], repeat=7):
print(row)

关于python - 内置用于创建长度为 n 的字符集的排列?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52843790/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com