Arrays are essentially characterized by the three properties, described in Table 4.2:
Name |
Description |
shape |
This describes how the data should be interpreted, as a vector, a matrix, or a higher-order tensor, and it gives the corresponding dimension. It is accessed with the attribute shape. |
dtype |
This gives the type of the underlying data (float, complex, integer, and so on). |
strides |
This attribute specifies in which order the data should be read. For instance, a matrix could be stored in memory contiguously column by column (FORTRAN convention), or row by row (C convention). The attribute is a tuple with the numbers of bytes that have to be skipped in memory to reach the next row and the number of bytes to be skipped to reach the next column. It even allows for a more flexible interpretation of the data in memory, which is what makes array views possible. |