EuroPython 2025

Reuven M. Lerner

Reuven is a full-time Python trainer, teaching at companies around the world and also via his LernerPython online platform. Reuven publishes both Better Developers (about Python) and Bamboo Weekly (Pandas puzzles based on current events). He wrote both Python Workout and Pandas Workout, published by Manning.


Sessions

07-15
13:45
90min
Let's build a dictionary!
Reuven M. Lerner

Dictionaries are one of the most important data structures in Python. We use them all of the time, in a wide variety of ways. But have you ever thought about how you might implement your own dictionary class? In this tutorial, we'll do exactly that, creating a simple-but-usable dict. Along the way, we'll talk not only about hash functions, and how to resolve collisions, but also a variety of topics related to Python classes, magic methods, and generators. You'll come out of this tutorial with a deeper understanding of Python's dictionaries -- not just what they are and how they work, but also how various Python mechanisms all combine to give us the dicts that we love.

Python Core, Internals, Extensions
Club H
07-15
15:30
90min
Let's build a dictionary!
Reuven M. Lerner

Dictionaries are one of the most important data structures in Python. We use them all of the time, in a wide variety of ways. But have you ever thought about how you might implement your own dictionary class? In this tutorial, we'll do exactly that, creating a simple-but-usable dict. Along the way, we'll talk not only about hash functions, and how to resolve collisions, but also a variety of topics related to Python classes, magic methods, and generators. You'll come out of this tutorial with a deeper understanding of Python's dictionaries -- not just what they are and how they work, but also how various Python mechanisms all combine to give us the dicts that we love.

Python Core, Internals, Extensions
Club H
07-18
11:45
30min
What does = do?
Reuven M. Lerner

We use assignment all the time in Python. But what really happens when we use an = in our code? The answer is: It depends. In this talk, I'll explore what happens when we assign a value to a variable, when we mutate an existing value, and when we assign to an attribute. Along the way, we'll explore variable scopes, byte codes, and descriptors. By the end of this talk, you'll appreciate all the hard work that the little = sign is doing, and the remarkable stuff that happens behind the scenes when you use it.

Python Core, Internals, Extensions
Forum Hall