遍历所有列表顺序

问题描述 投票:0回答:1

因此,我有一组11个变量,我想使用python将数字1分配给11。然后,我要遍历这些分配的所有组合,以根据某些标准测试每种组合(a + b + c + e = 26,e + f + d + g = 26,有6种这样的测试)。

[为简单起见,只给3个变量分配了数字1-3,我希望程序输出a = 1,b = 2,c = 3,然后在将顺序更改为a = 1之前对照标准进行检查, b = 3,c = 2。检查然后更改:a = 2,b = 1,c = 3检查并更改,直到所有组合都被检查为止。

我首先考虑过使用列表存储数字1至11,然后使用for循环将其分配给变量ak,但是除了使用shuffle函数随机化列表顺序之外,我不确定如何遍历组合。随机播放的随机性最终会完成任务,但是速度非常慢,当然也不是一个很好的解决方案。

感谢您的任何帮助:)

python list loops combinations orders
1个回答
0
投票

itertools程序包包含combinations功能,可能对您有所帮助。例如:

import itertools
numbers = range(1, 12)
for (a,b,c) in itertools.combinations(numbers, 3):
   # do something
© www.soinside.com 2019 - 2024. All rights reserved.