Member-only story

Python features — the walrus operator

Martin McBride
4 min readFeb 4, 2025

--

Python 3.8 introduced the walrus operator, a feature that continues to create confusion and annoyance in equal measure. In this short article, we will try to understand what it is all about.

A new version of my book, Functional Programming in Python, is available on Amazon as a PDF or paperback.

Expressions, statements and assignment

In programming, we use the term expression to describe a short piece of code that returns a value. For example, this expression returns the sum of a and b:

a + b

A statement is a short piece of code that has an effect but does not return a value. For example, this del statement removes element 2 from list k:

del k[2]

Since this is a statement, it does not return a value. This makes it illegal to use a statement where a value is required. For example:

print(a + b)
print(del k[2])

This code won’t even compile. The second line gives a syntax error, because print requires a value but del is a statement.

--

--

Martin McBride
Martin McBride

Responses (2)