Learning paths · Skills · Intermediate

Python: how it really runs

What CPython does with your code, from bytecode and reference counts to the GIL, generators and the event loop, so its surprises stop being surprising.

0 of 12 done

The map

  • Not started
  • In progress
  • Done
  1. 01Objects and executionBytecode, names, dunder methods0/3
  2. 02Functions and control flowClosures, generators, exceptions0/3
  3. 03Memory and modulesReference counts, imports, venvs0/2
  4. 04ConcurrencyThe GIL, threads, asyncio0/2
  5. 05Types and speedHints, profiling, C extensions0/2
  6. 06Next: system designSame ideas, at service scale

Everything here is about CPython, the reference interpreter from python.org, on Python 3.12 and 3.13. Where 3.14 changed something (free-threading's status, lazy annotations, the garbage collector) the topic says so, and where a behaviour belongs to CPython rather than the language, the topic says that too.

Where this path leads