NumPy Arrays for Beginners: A Better Alternative to Python Lists
Source: Dev.to
Introduction
NumPy is a highly popular Python package. One of its best features is the NumPy array (officially known as ndarray). You can think of it as a cleaner, much faster version of a standard Python list.
Although NumPy arrays resemble Python lists, they offer a significant advantage: you can perform mathematical operations on the entire array at once. These operations are simple to write and execute very efficiently.
Example
# Regular Python lists
heights = [2.40, 3.21, 1.34, 3.45]
weights = [45.0, 68.3, 34.1, 82.0]
# Attempting element‑wise math with lists raises an error
bmi = weights / (heights ** 2)Error
TypeError: unsupported operand type(s) for ** or pow(): 'list' and 'int'Python lists do not support element‑wise mathematical operations. To achieve the same result with regular lists you would need to loop through each element individually, which is slow and inefficient for large data.
NumPy allows us to perform these calculations efficiently by converting the lists into NumPy arrays:
import numpy as np
np_height = np.array(heights)
np_weight = np.array(weights)
bmi = np_weight / np_height ** 2
bmiThe code runs successfully and returns a new array containing the BMI values for each corresponding pair:
array([ 7.8125 , 6.62842946, 18.99086656, 6.88930897])Important Note
np.array([1.0, 'is', True])Output
array(['1.0', 'is', 'True'], dtype='<U32')In summary, NumPy lets you apply math to entire arrays at once, making your calculations fast and efficient.