我想按 3 项对列表进行分组,并尽可能简洁地按 2 项组合对每个这样的组进行迭代。我尝试了几件事,其中一个甚至没有编译:
from itertools import combinations
L = [1,2,3,4,5,6]
for a,b in combinations(zip(*[iter(L)]*3), 2):
print "{0:d} {1:d}".format(a,b)
预期产出
1,2
1,3
2,3
4,5
4,6
5,6
我可以通过命令式语句来做到这一点,但我正在寻找一种声明性的方式。