“是否可以在Python中创建元组列表的置换或乘积?”

问题描述 投票:0回答:1
lis=[
    (1, 7), (1, 2), (1, 4), (7, 1), (7, 2), (7, 4), (2, 1), (2, 7), (2, 4), (4, 
    1), (4, 7), (4, 2)
]

假设我有以上的元组列表。我想创建所有可能的元组列表,例如[(1,7,1,2),(1,2,1,4) ...]。结果列表中的每个元组必须是列表中2个元组的排列,并且结果列表中必须包含所有此类元组。

list(permutations(lis,4))给出结果:[((1, 7), (1, 2), (1, 4), (7, 1)), ((1, 7), (1, 2), (1, 4), (7, 2))...]。它形成一个4元组的元组。但是我希望将内部元组解包,并由2个元组的4个元素组成,而不是由元组的元组组成。

python-3.x product permutation
1个回答
0
投票

这是完成它的一种方法:

[a + b for a, b in permutations(lis, 2)]
© www.soinside.com 2019 - 2024. All rights reserved.