迭代输出字符串位于特定ord中的多个列表中的字符组合

2024-04-29 12:41:46 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试使用itertools创建一个Python脚本,其中:

我有4个列表,每个列表包含单个字符:

li1 = ["a", "b", "c"]
li2 = ["d", "e", "f"]
li3 = ["q", "w", "e"]
li4 = ["t", "y"]

我想输出以下所有可能的排列,按照这个特定的顺序:

li1 + li2 + li3 + li1 + li4 + li1

其中li是列表中的字符串/字符,并且序列/顺序不能更改

作为一个新手,我所能想到的就是循环遍历每个列表,但我不知道如何同时执行4次

任何帮助都将不胜感激


Tags: 字符串脚本列表顺序序列li字符itertools
1条回答
网友
1楼 · 发布于 2024-04-29 12:41:46

您可以使用itertools.product()来实现:

import itertools

li1 = ["a","b","c"]
li2 = ["d","e","f"]
li3 = ["q","w","e"]
li4 = ["t", "y"]

for elem in itertools.product(li1, li2, li3, li1, li4, li1):
  print elem

(我冒昧把你们的节目改成了单子。不过,该代码也可以处理集合,只是排列顺序不同。)

相关问题 更多 >