A NumPy array is a multi - dimensional, homogeneous data structure. Homogeneous means that all elements in the array must be of the same data type (e.g., integers, floating - point numbers). NumPy arrays can have one or more dimensions. For example, a one - dimensional array can be thought of as a list, while a two - dimensional array is similar to a matrix.
The shape of a NumPy array is a tuple that indicates the size of each dimension. For example, a 2D array with shape (3, 4)
has 3 rows and 4 columns. The number of elements in the tuple represents the number of dimensions of the array.
import numpy as np
# Create a 2D array
arr = np.array([[1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12]])
print("Array shape:", arr.shape)
print("Number of dimensions:", arr.ndim)
The simplest way to print a NumPy array is to use the built - in print()
function.
import numpy as np
# Create a 1D array
arr_1d = np.array([1, 2, 3, 4, 5])
print("1D Array:")
print(arr_1d)
# Create a 2D array
arr_2d = np.array([[1, 2], [3, 4]])
print("\n2D Array:")
print(arr_2d)
When you print a 1D array, it will be displayed as a single row of elements. For a 2D array, each row will be printed on a separate line.
By default, NumPy may print floating - point numbers with a large number of decimal places. You can control the precision using np.set_printoptions()
.
import numpy as np
arr_float = np.array([1.23456789, 2.34567891, 3.45678912])
np.set_printoptions(precision = 2)
print(arr_float)
For very large or very small numbers, NumPy may use scientific notation. You can suppress it using the suppress
option in np.set_printoptions()
.
import numpy as np
arr_small = np.array([1e - 8, 2e - 8, 3e - 8])
np.set_printoptions(suppress = True)
print(arr_small)
If an array is very wide, it may wrap around. You can adjust the line width using the linewidth
option.
import numpy as np
arr_wide = np.arange(100)
np.set_printoptions(linewidth = 200)
print(arr_wide)
In addition to the array elements, it’s often useful to print metadata such as the shape, data type, and number of dimensions.
import numpy as np
arr = np.array([[1, 2, 3], [4, 5, 6]], dtype = np.float64)
print("Array shape:", arr.shape)
print("Array data type:", arr.dtype)
print("Array dimensions:", arr.ndim)
print("Array elements:")
print(arr)
If you have a very large array, printing the entire array may not be practical. Instead, you can print slices of the array.
import numpy as np
large_arr = np.arange(10000).reshape(100, 100)
print("Top - left corner:")
print(large_arr[:5, :5])
When printing arrays, include descriptive messages to make it clear what the array represents.
import numpy as np
# Generate a random array representing test scores
test_scores = np.random.randint(0, 100, 10)
print("Test scores of 10 students:")
print(test_scores)
After customizing the print options, it’s a good practice to reset them to the default values to avoid unexpected behavior in other parts of your code.
import numpy as np
arr_float = np.array([1.23456789, 2.34567891, 3.45678912])
np.set_printoptions(precision = 2)
print(arr_float)
# Reset print options
np.set_printoptions(edgeitems = 3, infstr='inf',
linewidth = 75, nanstr='nan', precision = 8,
suppress = False, threshold = 1000, formatter = None)
Printing NumPy arrays is a fundamental operation that can greatly aid in understanding and debugging your numerical code. By mastering the basic and advanced techniques of printing, such as customizing precision, suppressing scientific notation, and printing array metadata, you can make your code more readable and maintainable. Remember to follow best practices like using descriptive messages and resetting print options to ensure a smooth development experience.