28 lessons · runs in your browser

Learn Python in 7 days

A complete beginner's course in the essentials of the language — from print() on Monday to classes, generators and a finished project by Sunday. Every example on this site is a Python program you can edit and run where it sits.

Lessons
28
Days
7
Things to install
0
Python
3.14
This is not a screenshot — press Run Python
# Change anything here, then press Run. name = "Python" days = 7 for day in range(1, days + 1): print(f"Day {day}: learning {name}") print(f"\nThat is {days} days of {name}.")

Real Python, running in this tab. The first run downloads the interpreter; after that it is instant.

Runnable, not readable

Every example is a live Python editor. Change the code, press Run, see what happens — the fastest way anyone has ever learned to program.

Nothing to install

Real CPython 3.14 compiled to WebAssembly runs inside your tab. No download, no PATH, no version conflicts — and nothing you write leaves your machine.

Essentials, in order

Twenty-eight lessons, each building on the last, chosen to cover what you actually need — and to leave out what you do not.

Exercises with answers

Each lesson ends with something to write yourself, and a worked solution that explains why it is written that way.

Seven days, in order

Each day is four short lessons and takes roughly two hours. Do one a day for a week, or the whole thing in a long weekend — the order is what matters, not the pace.

The editor waits for you

These are not sandboxed toys. input() really blocks, tracebacks name real line numbers, and you can write files, import from the standard library, and split a program across several modules.

Run the program beside this and answer its questions — the prompt appears in the output, exactly as it would in a terminal.

  • Full standard library — json, csv, datetime, itertools
  • Real tracebacks with file names and line numbers
  • Multi-file projects with working imports
  • Nothing is uploaded; your code stays in the tab
Answer the question in the output Python
name = input("What is your name? ") year = int(input("What year were you born? ")) age = 2026 - year print(f"Hello {name}. You are about {age}.") if age >= 100: print("Which is impressive.")

Day 1 takes ninety minutes

Four lessons: printing, variables, strings, and reading input. By the end of them you will have written a program that asks a question and answers it.