itertools在一个变量数量上的排列

ilmyapht  于 2021-07-14  发布在  Java
关注(0)|答案(1)|浏览(330)

我有这个公式 x*A + y*B + z*C x、 y,z是变量
a、 b,c是常数
我想对这个公式应用所有可能的排列,并存储每个结果
对于偶数的排列,这是相当简单的

from itertools import permutations 

perm = permutations([1, 2,3])

[(1, 2, 3), (1, 3, 2), (2, 1, 3), (2, 3, 1), (3, 1, 2), (3, 2, 1)]

# ["1 * A " + 2 * B + 3 * C],   -->append

  #  ["1 * A " + 3 * B + 2 * C],  --->append 

# ............

如何将其应用于非均匀排列数组,如 perm = permutations([1, 2,3,4,5]) ?

xt0899hw

xt0899hw1#

itertools.permutations 有一个可选的第二个参数,用于选择每个排列的大小: perm = permutations([1, 2, 3, 4, 5], r=3) 结果: [(1, 2, 3), (1, 2, 4), (1, 2, 5)...]

相关问题