Name Tag Airport: Python's Object Model
·
Course overview
1
A tag is not the bag: names and objects
2
Sealed bags: mutable and immutable
3
Bags inside bags: containers and copying
4
Handing over a bag: functions and arguments
5
Zones and passes: scope
6
Carry-on bags: closures
7
The bag spec: classes and instances
8
Standard airport procedures: dunder methods
9
The spec behind the spec: inheritance and MRO
10
The checkpoint: how attribute access really works
11
Unclaimed bags: memory and GC
12
Locker numbers: hashing, equality and the big picture
Join the baggage center at Haneulseom International Airport as its new tag handler and solve twelve lost-baggage cases, watching names, objects, references, scopes, classes and memory on a live tag board. A 10-hour course.
0:00–0:50
A tag is not the bag: names and objects
0:50–1:40
Sealed bags: mutable and immutable
1:40–2:30
Bags inside bags: containers and copying
2:30–3:20
Handing over a bag: functions and arguments
3:20–4:10
Zones and passes: scope
4:10–5:00
Carry-on bags: closures
5:00–5:50
The bag spec: classes and instances
5:50–6:40
Standard airport procedures: dunder methods
6:40–7:30
The spec behind the spec: inheritance and MRO
7:30–8:20
The checkpoint: how attribute access really works
8:20–9:10
Unclaimed bags: memory and GC
9:10–10:00
Locker numbers: hashing, equality and the big picture
Two floors beneath Haneulseom International Airport lies a baggage center the size of a football field. The staff call it the Heap Hall. One bag can carry many tags, and a bag with no tags left on it is eventually thrown away.
That is exactly how Python's variables and objects behave. A variable is not a box that holds a value; it is a name tag hung on an object. Keep that one picture in your head, and bugs like "the list that changed the original too", "the default argument that piles up on every call" or "the sticker that showed up on every instance" stop being mysteries.
Starting today, you are the center's new tag handler. Over ten hours you will solve twelve lost-baggage cases and learn Python's object model along the way.
| Who | What they do |
|---|---|
| Supervisor Do Miran | Thirty years at the baggage center. Her favorite line: "One bag, many tags." She hands you a lost-baggage report at the start of each lesson and leaves a note in her notebook at the end. |
| Pin | A baggage-sorting robot that points with arrows instead of talking. The tag board's mascot, Pin gives short tips and warns you about traps. |
| The reporters | A new one every lesson: a travel agent, a school-trip teacher, a startup developer, an exhibition shipping coordinator and more. |
| Part | Lessons | Topics |
|---|---|---|
| Names and objects | 1–4 | =, is, mutable and immutable, copying, function arguments |
| How names are found | 5–6 | Scope (LEGB), closures |
| Classes are objects | 7–10 | Classes and instances, dunder methods, inheritance and MRO, descriptors |
| Object lifetime and identity | 11–12 | Reference counting, GC, weak references, hashing and equality |
Each lesson closes its own case, so you can pick only the ones you need. Still, the picture from Lesson 1 comes back in every lesson, so start there.
sys.getsizeof values, are marked as such..py file and run it.Pin says
→ Before you press 'Next line' on the tag board, say out loud what will change. If you're right, you've got it. If you're wrong, the difference is what you'll learn today.
Get news about new lessons
We'll email you when this course gets new lessons or a follow-up course opens.
R
ReflexKR
Learn Python and Reflex by doing. Every example was run and verified on Reflex 0.10.0.
ReflexKR is free, with no banner ads. If it helped you, you can support it with a coffee. ☕ Buy us a coffee
Affiliate disclosure© 2026 ReflexKR · Since 2026 · CC BY-NC 4.0
Questions & answers
Ask anything about this lesson. Questions from every language version of this page appear together.