It is a powerful N-dimensional array which is in the form of rows and columns. NumPy arrays can be initialized from the nested Python list and access its items.

NumPy array is not the same as the Standard Python array, which only manages single dimensional arrays.

**Single Dimensional NumPy Array:**import numpy as np a = np.array([4,5,6]) print(a)

The output for the above code will be [4 5 6]

**Multi-Dimensional arrays**import numpy as np a = np.array([[4,5,6],[7,8,9]]) print(a)

The output for the above code will be [[4 5 6] [7 8 9]]

### NumPy Array Attributes

**ndarray.ndim**It returns the number of dimensions i.e. axes of the array.`import numpy as np a = np.array([[1,2,3],[4,5,6]]) print(a.ndim)`

The output of the above code will be 2, because ‘a’ is a 2-dimensional array.

**ndarray.shape**It returns a tuple of the dimension of the array, that is. (r, c), where r is the number of rows and c is the number of columns.import numpy as np a = np.array([[1,2,3],[4,5,6]]) print(a.shape)

The output of the above code will be (2, 3), that is 2 rows and 3 columns.

**ndarray.size**It returns the total number of items of the array.import numpy as np a = np.array([[1,2,3],[4,5,6]]) print(a.size)

The output of the above code will be 6 that is 2 x 3.

**ndarray.dtype**It returns an object showing the type of the items in the array.import numpy as np a = np.array([[1,2,3],[4,5,6]]) print(a.dtype)

The output of the above code will be “int32” that is. 32-bit integer.

We can explicitly specify the data type of a NumPy array.

import numpy as np a = np.array([[1,2,3],[4,5,6]], dtype = float) print(a.dtype)

The above code will return “float64” which is a 64-bit float.

**ndarray.itemsize**It returns the size of each element of the array in bytes.import numpy as np a = np.array([[1,2,3],[4,5,6]]) print(a.itemsize)

The output of the above code will be 4 that is 32/8

**ndarray.data**It returns the buffer holding the actual items of the array. This is an additional method of accessing the elements through indexing.import numpy as np a = np.array([[1,2,3],[4,5,6]]) print(a.data)

The above code will return the list of items.

**ndarray.sum()**The function will return the sum of all the items of the ndarray.import numpy as np a = np.random.random( (2,3) ) print(a) print(a.sum())

The matrix generated is [[0.46541517 0.66668157 0.36277909] [0.7115755 0.57306008 0.64267163]],

Hence, the above code will return 3.422183052180838. Because the random number is used here, therefore you may not get the same output.

**ndarray.min()**The function will return the minimum item value from the ndarray.import numpy as np a = np.random.random( (2,3) ) print(a.min())

The matrix generated is [[0.46541517 0.66668157 0.36277909] [0.7115755 0.57306008 0.64267163]],

Hence, the above code will return 0.36277909. Because the random number is used here, therefore you may not get the same output.

**ndarray.max()**The function will return the maximum item value from the ndarray.import numpy as np a = np.random.random( (2,3) ) print(a.max())

The matrix generated is [[0.46541517 0.66668157 0.36277909] [0.7115755 0.57306008 0.64267163]],

Hence, the above code will return 0.7115755. Because the random number is used here, therefore you may not get the same output.