gpt4 book ai didi

python - itertools 排列组合

转载 作者:太空宇宙 更新时间:2023-11-03 11:59:46 25 4
gpt4 key购买 nike

我正在努力使用 itertools 排列组合。最终,我试图在各种机器排列中创建一个可能的客户组合矩阵。我相信我有组合片段,但无法向脚本添加排列。

到目前为止,这是我的代码:

import itertools

Mach = [1,2,3,4]
Cust = [1,2,3,4,5,6,7,8,9,10,11,12]

a = len(Cust)

for n in range(a):
print list(itertools.combinations(Cust,n))
n = n+1

理想情况下,我想解决所有可能的输出:

1 - 1,2,3
2 - 4,5,6
3 - 7,8,9
4 - 10,11,12

如有任何帮助或指导,我们将不胜感激。

更新:请原谅我的无知,使用 Product 不一定能提供我想要的结果。我想做的是在机器上创建一个客户列表,每个客户只反射(reflect)在一台机器上(一次),然后迭代地创建这个组合的另一个矩阵;对于所有可能的组合。我相信这是一个组合,而不是排列问题,至于输出,我认为 1: 1, 2, 3 和 1: 3, 2, 1 是一样的。

例子:(Cust1, Mach1); (Cust2, Mach1); (Cust3, Mach2); (Cust4, Mach2); (Cust5, Mach2); (Cust6, Mach3); (Cust7, Mach3); (Cust8, Mach3); (Cust9, Mach3); (Cust10, Mach3); (Cust11, Mach4); (Cust12, Mach4)

后跟(作为示例):(Cust1, Mach1); (Cust2, Mach2); (Cust3, Mach2); (Cust4, Mach2); (Cust5, Mach2); (Cust6, Mach3); (Cust7, Mach3); (Cust8, Mach3); (Cust9, Mach3); (Cust10, Mach4); (Cust11, Mach4); (Cust12, Mach4)

等...

最佳答案

productcombinations 都不是您真正想要的。您想要将 Mach 的每个项目与 Cust 中的一组 项目配对。

n = len(cust)/len(m)
for i, m in enumerate(mach):
print(m, cust[n*i: n*(i+1)])

关于python - itertools 排列组合,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53052286/

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