Многомерные массивы немного мутные. Есть несколько причин для их использования и много причин, чтобы дважды подумать и использовать что-то еще, что более правильно отражает то, что вы делаете. [Подсказка. ваш вопрос был тонок по контексту ;-)]
Если вы занимаетесь математикой, используйте numpy
.
Однако некоторые люди работали с языками, которые заставляют их использовать многомерные массивы, потому что это все, что у них есть. Если вам столько же лет, сколько мне (я начал программировать в 70-х годах), вы, возможно, помните времена, когда многомерные массивы были единственной структурой данных, которую вы имели. Или ваш опыт мог ограничить вас языками, в которых вам пришлось преобразовывать проблему в многомерные массивы.
Скажем, у вас есть коллекция n 3D очков. Каждая точка имеет значения x, y, z и времени. Это массив n x 4? Или массив 4 * n ? На самом деле, нет.
Поскольку каждая точка имеет 4 фиксированных значения, это более корректный список кортежей.
a = [ ( x, y, z, t ), ( x, y, z, t ), ... ]
Более того, мы могли бы представить это как список объектов.
class Point( object ):
def __init__( self, x, y, z, t ):
self.x, self.y, self.z, self.t = x, y, z, t
a = [ Point(x,y,x,t), Point(x,y,z,t), ... ]