Как выбрать один список из каждого списка списков? - PullRequest
0 голосов
/ 05 августа 2020

Я только начал использовать Python для этого проекта, над которым я работал. Я создал Список списков списков целых чисел. Пример.

[[[0,1,2],[0,2,1]],
 [[0,1,2],[2,1,0]],
 [[0,1,2],[1,0,2]]]

Я хочу создать все возможные массивы, которые берут по одному списку из каждого списка в большом списке и сопоставляют целые числа с соответствующими столбцами в 2-м массиве. Как я могу это сделать без вложенных циклов for? Я бы использовал циклы for для каждого списка списков, но длина списка не фиксирована. Список соответствует этому шаблону.

длина списка: ((l[i])[(i-1)!])[i]

ex конечной матрицы.

[0  2  1]   
[2  1  0]         
[1  0  2]

Это код, который у меня есть:

k = (range(len(m)))
q = list(permutations(k))
p = list
for e in range(0, len(m)):
    p.extend(q)
    for j in range(0, len(m)):
        if ((p[e])[j])[e] != e:
            p[e].pop(j)
for z in range(0, len(m)):

Где m - это массив, который я хочу создать (len (m) x len (m) array), а p содержит len (m) списки списков

Заранее спасибо.

...