Python
Learn Python end to end. Syntax, data structures, OOP, generators, async, testing, and packaging.
19 lessons, in order
- 120 min
Hello, Python
VariablesPrintRepl - 225 min
Numbers and Strings
IntegersFloatsString concatenationF-strings - 315 min
Asking the User a Question
Input()String return typeInt() and float() conversionInteractive programs - 430 min
Control Flow
If/elif/elseComparison operatorsBoolean operatorsWhile loopsFor loopsBreak and continue - 530 min
Lists and Tuples
List creationIndexingSlicingAppendPopIteration+2 - 630 min
Dictionaries and Sets
Dict basicsGet with defaultIterate keysIterate valuesIterate itemsSets+1 - 730 min
Functions
DefParametersDefault valuesKeyword arguments*args and **kwargsReturn values+1 - 825 min
Comprehensions
List comprehensionsDict comprehensionsSet comprehensionsConditional expressionsReadability tradeoffs - 930 min
Files and IO
Open with withReading linesWriting filesPathlib.PathJson readJson write - 1030 min
Modules and Packages
ImportFrom importWriting your own moduleIf __name__ == "__main__"Packages__init__.py - 1135 min
Classes and OOP
Class definition__init__Instance attributesClass attributesMethods__repr__ - 1230 min
Inheritance and Composition
SubclassingSuper()Method overridingCompositionWhen to choose composition - 1330 min
Exception Handling
TryExceptElseFinallyRaiseCustom exception classes+1 - 1430 min
Iterators and Generators
Iterator protocolYieldGenerator functionsGenerator expressionsLazy evaluation - 1530 min
Decorators
Functions are objectsWrapper functions@decorator syntaxFunctools.wrapsParametrized decorators - 1625 min
Context Managers
With statement__enter__ and __exit__Writing your own context managerContextlib.contextmanager - 1740 min
Concurrency: Threads and Async
GIL in plain languageConcurrent.futures.ThreadPoolExecutorAsyncio basicsAsync defAwaitWhen to use threads vs async - 1835 min
Testing with pytest
Test functionsAssertRunning pytestParametrizeFixtures - 1935 min
Packaging and Deployment
Pyproject.tomlPip install -eConsole scriptsBuilding a wheelPublishing to PyPI
Learn Python in your language
Every lesson, quiz, and tutor reply renders in your language. The AI tutor matches the language you ask in.
Roles that use Python
See how hiring teams interview engineers on Python, in production-like environments.
Senior Python Developer
Hire senior Python developers in real Django, FastAPI and Flask codebases with real load and real test suites. Live or take-home, fully recorded.
See the interviewBackend Engineer (Go, Rust, Java)
Hire backend engineers in real services with real databases, real concurrency and real latency budgets. Live or take-home, fully recorded.
See the interviewData Engineer
Hire data engineers in workspaces with real Spark, dbt and Airflow pipelines. Schema drift, bad data and reruns included.
See the interview