Python :Итерация списков с разным количеством измерений, есть ли общий способ?

# 2x3 dimensional list
multidim_list = [ 
                  [1,2,3],
                  [4,5,6],    
                ]
# 2x3x2 dimensional list
multidim_list2 = [ 
                   [ 
                     [1,2,3],
                     [4,5,6],  
                   ],
                   [ 
                     [7,8,9],
                     [10,11,12],  
                   ]
                 ]

def multiply_list(list):
   ...

Я хотел бы реализовать функцию, которая бы умножала все элементы в списке на два. Однако моя проблема в том, что списки могут иметь разное количество измерений.

Существует ли общий способ зацикливания/перебора многомерного списка и, например, умножения каждого значения на два?

РЕДАКТИРОВАТЬ 1 :Спасибо за быстрые ответы. В этом случае я не хочу использовать numpy. Рекурсия кажется хорошей, и ей даже не нужно копировать список, который на самом деле может быть довольно большим.

10
задан JoonasS 19 December 2012 в 20:52
поделиться