Python emphasizes readable expressions, iterable data, and a large standard library, yet real programs still depend on ownership, type expectations, and failure handling. This directory groups the language and application topics by the decision they support.
Choose a starting point
First trace values, control flow, functions, and modules. Then study files, exceptions, typing, concurrency, and data access in the context of complete programs. Use the projects to test behavior rather than memorizing examples.
- Python Tutorial
- Python interpreter and virtual environments: run the intended executable
- Python functions: define units, validate input and return a result
- Python comprehensions: build results without changing the input
- Python classes: keep instance state separate from class state
- Python scope: local assignment, nonlocal state and late binding
- Python recursion: bound depth instead of raising the limit
- Python input and output: separate parsing from terminal I/O
- Python keywords and identifiers: parser rules differ from field rules
Common Mistakes
Mutable defaults, broad exception handlers, text encoding assumptions, and unbounded input can hide behind concise code. The linked sections show where those costs surface.
