Concepts: Quick Reference¶
Plain-language explanations of Python concepts. Use these when you need to understand something a project introduces.
Core Concepts (start here)¶
- What is a Variable?
- How Loops Work
- Functions Explained
- Collections: Lists, Dicts, Sets
- Files and Paths
- Errors and Debugging
- Reading Error Messages: traceback anatomy, 10 most common errors
- Types and Conversions
Intermediate Concepts (after Level 2)¶
- How Imports Work: modules, packages,
__init__.py - Classes and Objects: OOP basics,
self, inheritance - Decorators Explained:
@syntax, wrapping functions - Virtual Environments: venv, pip, requirements.txt
- The Terminal: Going Deeper: pipes, redirects, env vars
Intermediate+ Concepts (after Level 2)¶
- Comprehensions Explained: list/dict/set comprehensions, generator expressions, walrus operator
- args and *kwargs Explained:
*args,**kwargs, unpacking, positional-only, keyword-only - Generators and Iterators:
yield, lazy evaluation, generator pipelines - Context Managers Explained:
withstatement,__enter__/__exit__,contextlib - Enums Explained:
Enum,IntEnum,StrEnum,auto(), pattern matching - Collections Deep Dive:
Counter,defaultdict,namedtuple,deque,ChainMap - functools and itertools:
partial,lru_cache,reduce,chain,groupby,product - Regex Explained:
remodule, patterns, groups,matchvssearchvsfindall
Advanced Concepts (after Level 3)¶
- HTTP Explained: requests, responses, status codes, headers
- API Basics: REST, JSON, endpoints, authentication
- Async Explained: async/await, event loops, concurrency
Testing & Debugging¶
- Testing Strategies: test pyramid, TDD, mocking, fixtures,
pytest-cov - Debugging Methodology: Reproduce→Isolate→Hypothesize→Test→Fix→Verify→Prevent,
breakpoint(),pdb
Developer Skills¶
- Reading Documentation: navigating docs.python.org, reading function signatures
- Git Basics: init, add, commit, branch, merge, remote, push, pull,
.gitignore - Security Basics: OWASP Top 10, SQL injection, XSS, secrets management,
pip audit
Modern Python (Level 1+)¶
- Type Hints Explained: annotations, Optional, Union, Protocol
- Dataclasses Explained: @dataclass, fields, frozen, the easy way to create classes
- Match/Case Explained: structural pattern matching (Python 3.10+)
- Modern Python Tooling: uv, ruff, pyproject.toml, Python 3.11–3.14 highlights
How to use these¶
- Read the concept page before or during a project
- Each page has: explanation, code example, common mistakes
- Come back to these whenever you forget how something works
Practice Tools¶
| Tool | Description | How to use |
|---|---|---|
| Concept Quizzes | Interactive terminal quizzes for each concept | python concepts/quizzes/<name>-quiz.py |
| Flashcard Decks | Spaced repetition cards organized by level | python practice/flashcards/review-runner.py |
| Coding Challenges | Short focused exercises (beginner + intermediate) | See practice/challenges/README.md |
| Diagnostic Assessments | Test your readiness before starting a level | python tools/diagnose.py |
Available Quizzes¶
Each concept doc has a matching quiz in concepts/quizzes/:
- Api Basics
- Async Explained
- Classes And Objects
- Collections Explained
- Dataclasses Explained
- Decorators Explained
- Errors And Debugging
- Files And Paths
- Functions Explained
- How Imports Work
- How Loops Work
- Http Explained
- Match Case Explained
- Reading Error Messages
- The Terminal Deeper
- Type Hints Explained
- Types And Conversions
- Virtual Environments
- What Is A Variable