Python¶
Language Fundamentals¶
- variables types operators - types, numbers, operators, variables, reference semantics
- strings and text - string methods, formatting, encoding, bytes, input validation
- data structures - lists, tuples, sets, dicts, comprehensions, Counter, defaultdict
- control flow - conditionals, for/while loops, comprehensions, generator expressions
Functions and Functional Programming¶
- functions - parameters, scope (LEGB), closures, lambdas, map/filter, built-in functions
- decorators - function/class decorators, decorator factories, functools.wraps, practical patterns
Object-Oriented Programming¶
- oop fundamentals - classes, inheritance, properties, encapsulation, super(), MRO
- oop advanced - ABC, descriptors, metaclasses, dataclasses, slots, init_subclass
- magic methods - dunder methods, operator overloading, container/iterator/context protocols
Error Handling and I/O¶
- Error Handling and Context Managers - try/except, context managers, custom exceptions, EAFP
- file io - reading/writing, CSV, JSON, pathlib, os.path, encoding
- regular expressions - re module, pattern syntax, findall/sub/split, groups, flags
Standard Library¶
- standard library - collections, datetime, timedelta, random, functools
- iterators and generators - iterator protocol, yield, yield from, itertools, pipelines
Advanced Language Features¶
- type hints - annotations, generics, Protocol, mypy, TypeVar, Literal
- async programming - asyncio, async/await, gather, TaskGroup, aiohttp/httpx
- Concurrency - Threading and Multiprocessing - threading, multiprocessing, GIL, ThreadPoolExecutor, ProcessPoolExecutor
- memory and internals - CPython, reference counting, GC, weakref, bytecode
Performance and Quality¶
- profiling and optimization - cProfile, line_profiler, caching, performance tips
- recursion and algorithms - recursion, Big O, memoization, binary search, sorting
- testing with pytest - pytest, fixtures, parametrize, coverage, FastAPI testing
- project setup and tooling - pip, venv, PEP 8, poetry, IDEs
FastAPI Stack¶
- fastapi fundamentals - routing, path/query params, Depends, routers, project structure
- fastapi pydantic validation - schemas, view models, field validation, ORM conversion
- fastapi database layer - SQLAlchemy 2.0, async sessions, Alembic migrations, DAO pattern
- fastapi auth and security - JWT, bcrypt, cookies, login/logout, current user dependency
- fastapi deployment - Docker, Nginx, Gunicorn, SSL, monitoring, API versioning
- fastapi caching and tasks - Redis caching, Celery, BackgroundTasks, task queues
Ecosystem¶
- web frameworks comparison - Django vs Flask vs FastAPI
- data analysis basics - Pandas, Matplotlib, Seaborn, NumPy
Additional References¶
- django rest framework - Django REST Framework serializer patterns, relationship handling, validation, and advanced ORM
- stdlib patterns - Python standard library data structures and functional programming tools - collections module
- web scraping - BeautifulSoup web scraping patterns - element search methods, data extraction, pagination, table