Modern Python beginner course
Learn the language through data flow, collections, reliable file handling, program design, and testing—then combine those skills in five practical builds and an expense-tracker capstone.
How you will learn
Every lesson connects syntax to data flow, contracts, failure handling, and maintainability instead of teaching isolated tricks.
Start from the rule, contract, or data-flow decision.
Run complete examples and inspect tracebacks and output.
Finish a focused exercise and cumulative module build.
Course curriculum
Follow the order if Python is new. Each module applies data-flow and design decisions introduced before it.
Module 1
Understand execution, names, core types, numeric expressions, and validated text input through complete runnable programs.
By the end of this module
Module build
Build a study planner
Collect a learner and study target, validate the input, calculate a schedule, and present a readable summary without mixing calculation and interaction.
Module 2
Express complete branch rules, repeat work safely, design focused function contracts, and debug from traceback evidence.
By the end of this module
Module build
Build a trip-cost calculator
Validate trip inputs, calculate several cost categories through focused functions, handle boundary cases, and retain small regression checks.
Module 3
Select Python collections by semantics, transform data clearly, use lazy iteration, and split a program along stable dependency boundaries.
By the end of this module
Module build
Build a reading tracker
Store books and reading sessions, calculate summaries with collection operations, and divide the application into domain, reporting, and interface modules.
Module 4
Persist validated JSON, design exception contracts, model concepts with dataclasses, and manage iteration and resources through protocols.
By the end of this module
Module build
Build a persistent inventory
Model validated inventory records, save versioned JSON safely, reload through a checked boundary, and expose predictable error messages.
Module 5
Use type hints, pytest, isolated environments, and layered application design to finish software another developer can run and verify.
By the end of this module
Module build
Ship the Expense Tracker capstone
Combine validated models, category reports, versioned JSON persistence, type hints, tests, and documented setup into one finished command-line application.