The figure below shows the numbering of indices of a 3-d array. The column index is always last. The row index precedes the column index for arrays of two or more dimensions. For a 3-d array, the “plane” index is the first index.

Here is a conversational example of the creation of an array shaped like the above illustration.
>>> import numpy as np >>> d3 = np.array( ... [[[0, 1, 2, 3], [4, 5, 6, 7], [8, 9, 10, 11]], ... [[12,13,14,15], [16,17,18,19], [20,21,22,23]]]) >>> print d3 [[[ 0 1 2 3] [ 4 5 6 7] [ 8 9 10 11]] [[12 13 14 15] [16 17 18 19] [20 21 22 23]]]
To extract one element from a three-dimensional array, use an expression of this form:
A[plane,row,col]
For example:
>>> d3[0,0,0] 0 >>> d3[0,0,1] 1 >>> d3[0,1,0] 4 >>> d3[1,0,0] 12 >>> d3[1,2,3] 23
Slicing generalizes to any number of dimensions. For example:
>>> print d3
[[[ 0 1 2 3]
[ 4 5 6 7]
[ 8 9 10 11]]
[[12 13 14 15]
[16 17 18 19]
[20 21 22 23]]]
>>> d3[:,:,1:3]
array([[[ 1, 2],
[ 5, 6],
[ 9, 10]],
[[13, 14],
[17, 18],
[21, 22]]])