Best for beginners
This free, interactive Python course covers variables, data types, control flow, loops, functions, lists, dictionaries, tuples, classes, inheritance, encapsulation, dunder methods, dataclasses, generators, modules, error handling, JSON, HTTP requests, and async programming — all by writing and running real Python code in your browser.
Who this is for
Absolute beginners learning to code for the first time, developers who want to add Python to their toolkit, and anyone building toward automation, backend, or data work.
What you'll build
Start here
Write your first Python program. No setup required — just you and the editor.
Full curriculum
Write your first Python program. No setup required — just you and the editor.
Store information so your program can use it, change it, and reuse it.
Every value in Python has a type. Learn them all — strings, integers, floats, booleans, None, and how to convert between them.
Slice, search, split, join, and transform text. Strings are everywhere — master them.
Print things properly. f-strings, format(), padding, precision — control every detail of your output.
Make your program smart. Teach it to make decisions with if, elif, and else.
Combine conditions. and, or, not, in, is — the connectives that make decisions powerful.
Stop writing the same code ten times. for and while loops do the repetition for you.
Store multiple values in one variable. Lists are Python's most-used data structure.
Build lists in one line. The most Pythonic feature — write less, do more.
Like a list, but locked. Tuples are immutable — perfect for data that should never change.
Unique collections with lightning-fast lookups. Remove duplicates, find intersections, and compare groups.
Store data by name instead of position. Dictionaries give every value a meaningful key.
Write once, run anywhere. Functions are the building blocks of every real program.
Where variables live and how Python passes data. The stuff that trips up every intermediate programmer.
Bundle data and behaviour together. This is where Python gets really powerful.
Build on top of existing classes. Extend, override, and reuse without copying code.
Hide the internals. Control access with properties, getters, setters, and private attributes.
Make your classes feel like built-ins. __str__, __repr__, __len__, __eq__, and operator overloading.
Less boilerplate, more clarity. @dataclass generates __init__, __repr__, and __eq__ automatically.
Wrap functions with extra powers. Used by Flask, Django, FastAPI, and every serious Python project.
Write code that works with anything. Duck typing, Protocol, and ABC — Python's approach to interfaces.
Things go wrong. Handle it gracefully with try, except, else, finally, and custom exceptions.
Split code across files. Import from the standard library. Install third-party packages with pip.
Read, write, and process files. Every real program needs to work with files.
Process infinite sequences without running out of memory. yield changes everything.
Do multiple things at once without threads. async/await and asyncio make concurrent code readable.
Make HTTP requests and build simple servers. requests, urllib, and http.server.
Speak the language of APIs. json.loads, json.dumps, nested data, and custom serializers.
Python is the world's most popular programming language — used in web development, data science, machine learning, automation, and scripting. Companies like Google, Netflix, Instagram, and Spotify rely on Python. Its clean syntax makes it the ideal first language, and its vast ecosystem means you can build almost anything.
This free, interactive Python course covers variables, data types, control flow, loops, functions, lists, dictionaries, tuples, classes, inheritance, encapsulation, dunder methods, dataclasses, generators, modules, error handling, JSON, HTTP requests, and async programming — all by writing and running real Python code in your browser.
29 topics · 252 hands-on lessons · all levels
Absolute beginners learning to code for the first time, developers who want to add Python to their toolkit, and anyone building toward automation, backend, or data work.