どこかに向かうらしい話

迷走エンジニアの放浪記

Pythonでの多次元配列の定義方法

Pythonで多次元配列の定義についてのメモ。
基本的にはリスト内包表記で次のように配列を作ります。

例えば、要素数1が3、要素数2が4の2次元配列arr2は、

>>> arr2 = [[0 for i2 in range(4)] for i1 in range(3)]

にて作成可能。
例えば、要素数1が3、要素数2が4、要素数3が5の3次元配列arr3は、

>>> arr3 = [[[0 for i3 in range(5)] for i2 in range(4)] for i1 in range(3)]

にて作成可能。 arr3[i1][i2][i3]の値の操作は、

>>> arr3[1][2][3] = 1

>>> arr3
[[[0, 0, 0, 0, 0], [0, 0, 0, 0, 0], [0, 0, 0, 0, 0], [0, 0, 0, 0, 0]],
 [[0, 0, 0, 0, 0], [0, 0, 0, 0, 0], [0, 0, 0, 1, 0], [0, 0, 0, 0, 0]],
 [[0, 0, 0, 0, 0], [0, 0, 0, 0, 0], [0, 0, 0, 0, 0], [0, 0, 0, 0, 0]]]

と言った感じで扱える。