Многомерные массивы

Введение

Примеры

Списки в списках

Хороший способ визуализации двумерного массива - это список списков. Что-то вроде этого:

 lst=[[1,2,3],[4,5,6],[7,8,9]]

 

Здесь внешний список lst имеет три вещи в нем. каждая из этих вещей другой список: Первый: [1,2,3] , второй из них: [4,5,6] , а третий является: [7,8,9].Вы можете получить доступ к этим спискам так же, как и к другому элементу списка, например так:

 print(lst[0])
#output: [1, 2, 3]

print(lst[1])
#output: [4, 5, 6]

print(lst[2])
#output: [7, 8, 9]

 

Затем вы можете получить доступ к различным элементам в каждом из этих списков таким же образом:

 print(lst[0][0])
#output: 1 

print(lst[0][1])
#output: 2 

 

Здесь первый номер внутри [] скобки означает получить список в этом положении. В приведенном выше примере мы использовали число 0 означает получить список в 0 - ом положении , которое [1,2,3].Второй набор [] скобки означает получить деталь в этой позиции из внутреннего списка. В данном случае мы использовали как 0 и 1 0 - й позиции в списке мы получили это число 1 и в 1 - м положении , это 2

Вы также можете установить значения внутри этих списков таким же образом:

 lst[0]=[10,11,12]

 

Теперь список [[10,11,12],[4,5,6],[7,8,9]].В этом примере мы изменили весь первый список на совершенно новый.

 lst[1][2]=15

 

Теперь список [[10,11,12],[4,5,15],[7,8,9]].В этом примере мы изменили один элемент внутри одного из внутренних списков. Сначала мы вошли в список в позиции 1 и изменили элемент внутри него в позиции 2, который был 6, теперь это 15.

Списки в списках в списках в ...

Это поведение может быть расширено. Вот трехмерный массив:

 [[[111,112,113],[121,122,123],[131,132,133]],[[211,212,213],[221,222,223],[231,232,233]],[[311,312,313],[321,322,323],[331,332,333]]]

 

Как очевидно, это становится немного сложным для чтения. Используйте обратную косую черту, чтобы разбить различные измерения:

 [[[111,112,113],[121,122,123],[131,132,133]],\
 [[211,212,213],[221,222,223],[231,232,233]],\
 [[311,312,313],[321,322,323],[331,332,333]]]

 

Вложив подобные списки, вы можете расширить до произвольно больших размеров.

Доступ аналогичен 2D-массивам:

 print(myarray)
print(myarray[1])
print(myarray[2][1])
print(myarray[1][0][2])
etc.

 

И редактирование тоже похоже:

 myarray[1]=new_n-1_d_list
myarray[2][1]=new_n-2_d_list
myarray[1][0][2]=new_n-3_d_list #or a single number if you're dealing with 3D arrays
etc. 

Синтаксис

Параметры

Примечания