NumPy Arrays for Beginners: A Better Alternative to Python Lists

Published: (April 3, 2026 at 06:02 AM EDT)
2 min read
Source: Dev.to

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
bmi

The 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.

0 views
Back to Blog

Related posts

Read more »

Async Python Is Secretly Deterministic

When adding async support to our Python durable execution libraryhttps://github.com/dbos-inc/dbos-transact-py, we ran into a fundamental challenge: durable work...