Python — Beginner
Go from never having programmed to writing real Python: variables, strings, collections, loops, functions, files, modules, testing, and your own command-line applications — with practice at every step.
57 lessons0 challenges~11.75 hoursBeginner — no experience needed
Who this course is for
Absolute beginners who want to learn programming through Python — no prior experience needed. If you can use a computer, you can start here; by the end you will write small, useful programs on your own.
What you will be able to do
- Run Python three ways: the interpreter, the REPL, and .py script files
- Use variables and core data types — int, float, str, bool, None — with confident conversions
- Manipulate text: indexing, slicing, string methods, and f-string formatting
- Make decisions with if/elif/else, truthiness, and boolean logic
- Work with lists, tuples, sets, and dictionaries — and pick the right container
- Write loops: for, while, range, break/continue, and accumulator patterns
- Decompose problems into functions with parameters, returns, and docstrings
- Read tracebacks, debug systematically, and handle errors with try/except
- Read and write files, work with paths (pathlib), CSV, and JSON
- Import and create modules; use math, random, datetime, statistics, and Counter
- Create virtual environments and install packages with pip
- Write assertions and basic automated tests; make broken tests pass
- Break problems into inputs → processing → outputs and solve them step by step
- Build and organize your own command-line applications with persistence
Python and Your First Programs
Meet Python, run your first scripts, print real output, and learn to read the errors every programmer meets.
Variables and Data Types
Store and transform data: numbers, booleans, None, conversions, and operator precedence.
Working with Strings
Index, slice, transform, and format text with confidence.
Making Decisions
Branch with if/elif/else, master truthiness and boolean logic, and validate real input.
Lists and Collections
Lists, tuples, sets, dictionaries, and nested structures — and choosing the right container.
Loops
Repeat work deliberately: for, while, range, break/continue, and accumulator patterns.
Functions
Decompose problems into reusable pieces: parameters, returns, defaults, scope, docstrings.
Errors and Debugging
Read tracebacks, handle exceptions precisely, fail fast, and debug with a method — then repair real broken programs in the Bug Hunt.
Files, Paths and Data
Make work survive: read and write files, CSV, JSON persistence, and pathlib.
Modules and the Standard Library
Import, build your own modules, and borrow power from math, random, datetime, statistics, and Counter.
Environments and Packages
Virtual environments, pip, and requirements.txt — dependency judgment for real projects.
Testing and Code Quality
Assert what must be true, test the edges, write your own tests, and write code worth testing.
Problem Solving Fundamentals
Inputs, outputs, pseudocode, the accumulator toolbox, complexity intuition, and AI as a verified assistant.
Command-Line Applications
Menus, arguments, persistence, and the layered shape of a real CLI tool.
Capstone: Personal Finance CLI
Build from requirements: design, persist, test, and ship your own expense tracker — no tutorial, your decisions.