【发布时间】:2020-07-12 22:18:12
【问题描述】:
我有一个 Python 中的原始列表,如下所示:
list = [a, 1, b, 2, c, 3]
我已将其分为两个列表,如下所示:
list_1 = [a, b, c]
list_2 = [1, 2, 3]
我想要找到的是列表的最终列表,它为我提供了 list_1 和 list_2 的所有可能组合 不更改其当前“列”中的任何字母或数字。所以输出应该是这样的:
期望的输出:
final_list =[[a, b, c],
[a, 2, c],
[a, b, 3],
[a, 2, 3],
[1, b, c],
[1, 2, c],
[1, b, 3],
[1, 2, 3]]
有什么想法可以实现这一点吗?
【问题讨论】:
-
您创建所需输出的逻辑是什么?
-
每个“列”代表一个变量。假设第一个“列”的变量可以具有
a或1的值。第二列的变量的值可以是“b”或“2”等。我想要的是在输出上给出这些变量的所有可能组合(即“列”),第一列只能有a或1;第二个b或2等。如果字母c或数字3出现在第一个“列”中不会发生什么,因为这意味着第一个“列”中表示的变量将具有一个值属于另一个变量。
标签: python combinations permutation itertools