Допустим, у нас есть вложенный список с 3 уровнями (D1=2,D2=3,M=2), например:
l = [[[1,a],[2,b],[3,c]], [[4,d],[5,e],[6,f]]]
Я пытаюсь выяснить, есть ли какой-либо питонический способ построить 2 новых вложенных списка с 2 уровнями (D1 = 2, D2 = 3), например:
l1 = [[1,2,3], [4,5,6]]
l2 = [[a,b,c], [d,e,f]]
Тогда у нас может быть N уровней, а списки на самом глубоком уровне содержат M элементов (D1,D2,D3,..., D_N-1,M), цель всегда состоит в том, чтобы построить вложенные M списков с N-1 уровнями.
Другими словами, нам нужно сохранить иерархию, разделив нижний уровень.
Другой пример:
l = [[[[13076, 0, 0], [806, 0, 0]], [[13076, 0, 0], [2, 0, 0]]]], [[[[2066, 0, 0], [8, 0, 0]], [[42, 0, 0], [4147, 0, 0]]]]
l1 = [[[13076,806], [13076,2]], [[2066,8],[42,4147]]]
l2 = [[[0,0], [0,0]], [[0,0], [0,0]]]
l3 = [[[0,0], [0,0]], [[0,0], [0,0]]]
type(c) in [int, str]
подразумевает, что внутренние элементы могут быть либо целыми числами, либо строками. Можете ли вы опубликовать пример того, как выглядят ваши более глубокие вложенные данные? 12.03.2018