Если вам нужны все возможные комбинации, вы можете использовать itertools.product
.
Первый шаг - изменить все возможные значения 'a', 'b', 'c' and 'd'
.Предполагая, что ваш список повторяется каждые 4 шага, вы можете поместить в словарь, для ясности, как:
l1 = {k: [e.get(k) for e in your_list][i::4] for i, k in enumerate(['a', 'b', 'c', 'd'])}
l1
>>
{'a': [32, 544, 42, 2145],
'b': [2541, 44, 655, 450],
'c': [530, 54, 459, 342],
'd': [55, 454, 665, 186]}
Тогда:
from itertools import product
combinations = [c for c in product(*l1.values())]
combinations
>>[(32, 2541, 530, 55),
(32, 2541, 530, 454),
(32, 2541, 530, 665),
(32, 2541, 530, 186)
....
(2145, 450, 342, 186)] #256 combinations in this case (4**4)