O Level / IGCSE Python
The 2029–2031 syllabus is examined in Python only, from March 2029. Work through the steps in order: each block links to the notes for that section, and each step is checked against hidden tests as soon as you run it.
Your progress
0 of 82 steps done
82 steps in 14 blocks. Progress follows your account when you are signed in.
- A
Block A · Output and variables
print(), variables, constants and joining text — your first programs. Steps 1–5 of 82 · §8.1
0 / 5 done
- B
Block B · Input and casting
input() always gives a str — cast it with int(), float() and str(), and meet bool. Steps 6–11 of 82 · §8.1
0 / 6 done
- C
Block C · Operators
/ // % ** and the relational and logical operators — what each one gives you. Steps 12–17 of 82 · §8.2
0 / 6 done
- D
Block D · Selection with if
if, elif, else, nested selection — and getting every boundary right. Steps 18–23 of 82 · §8.1
0 / 6 done
- E
Block E · match-case
match … case for one value or several, and case _ for everything else. Steps 24–27 of 82 · §8.1
0 / 4 done
- F
Block F · for loops, totalling and counting
Count-controlled loops with range(), running totals, counters, largest and smallest. Steps 28–34 of 82 · §8.1
0 / 7 done
- G
Block G · while loops
Condition-controlled loops: keep asking, stop on a rogue value, and while True with break. Steps 35–39 of 82 · §8.1
0 / 5 done
- H
Block H · String handling
len(), upper(), lower(), find(), slicing and building strings in loops. Steps 40–46 of 82 · §8.1
0 / 7 done
- I
Block I · Validation
Range, length, presence, type and format checks that keep asking, and double entry verification. Steps 47–52 of 82 · §10.5
0 / 6 done
- J
Block J · Procedures, functions and scope
def, parameters, return values, local and global variables, and the built-in library functions. Steps 53–59 of 82 · §10.1–10.2
0 / 7 done
- K
Block K · Lists (1D and 2D)
Lists indexed from 0: fill, total, search, append and insert, then 2D lists with nested loops. Steps 60–67 of 82 · §10.3
0 / 8 done
- L
Block L · Searching and sorting
Linear and binary search, bubble and insertion sort, written out by hand the way the exam asks. Steps 68–73 of 82 · §9.3
0 / 6 done
- M
Block M · Files
Write, append and read text files with open(), with open and the r, w and a modes. Steps 74–78 of 82 · §10.4
0 / 5 done
- N
Block N · The scenario question
Several requirements in one program — the way the points-based scenario question is marked. Steps 79–82 of 82 · §8–§10
0 / 4 done


