Skip to content
O Level 2210 · IGCSE 0478 · 2029–2031

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.

Start at Step 1
  1. 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

    1. 1Hello, World!
    2. 2A receipt header
    3. 3Store it in a variable
    4. 4A constant for VAT
    5. 5Join text with +
  2. 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

    1. 6Say hello
    2. 7Add two whole numbers
    3. 8Price with decimals
    4. 9Average of three marks
    5. 10Next year
    6. 11True or False?
  3. 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

    1. 12Share the sweets
    2. 13Minutes into hours
    3. 14How many values in n bits?
    4. 15Split a 3-digit number
    5. 16Compare two numbers
    6. 17Allowed on the ride?
  4. 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

    1. 18Pass or fail
    2. 19The bigger number
    3. 20Grades with elif
    4. 21A range check
    5. 22Cinema prices (nested if)
    6. 23Odd or even
  5. 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

    1. 24Day of the week
    2. 25A menu
    3. 26A four-function calculator
    4. 27Season from the month
  6. 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

    1. 28Count to n
    2. 29Times table
    3. 30Total of n numbers
    4. 31Count the passes
    5. 32Largest and smallest
    6. 33Countdown
    7. 34A rectangle of stars
  7. 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

    1. 35Keep asking for the password
    2. 36Stop on -1
    3. 37Years to double
    4. 38Guess the number
    5. 39Count the digits
  8. 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

    1. 40Length and capitals
    2. 41First and last character
    3. 42Initials from a full name
    4. 43Count the vowels
    5. 44Reverse a word
    6. 45Find a word in a sentence
    7. 46A username from name and year
  9. 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

    1. 47Range check that re-asks
    2. 48Length check on a password
    3. 49Presence check
    4. 50Type check with isdigit()
    5. 51Double entry verification
    6. 52A format check
  10. 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

    1. 53A procedure that prints a banner
    2. 54A procedure with parameters
    3. 55A function that returns the area
    4. 56A function that returns True or False
    5. 57Local and global variables
    6. 58max, min and round
    7. 59Validate inside a function
  11. 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

    1. 60Fill a list from input
    2. 61Total and average of a list
    3. 62Highest and its position
    4. 63append, insert and pop
    5. 64Is it in the list?
    6. 65Two lists side by side
    7. 66A 2D list of scores
    8. 67Row and column totals
  12. 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

    1. 68Linear search
    2. 69Count the matches
    3. 70Binary search
    4. 71Bubble sort
    5. 72Bubble sort that stops early
    6. 73Insertion sort
  13. 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

    1. 74Write lines to a file
    2. 75Append to a file
    3. 76Read a file back
    4. 77Total the numbers in a file
    5. 78Search a file
  14. 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

    1. 79Scenario: club membership
    2. 80Scenario: shop stock
    3. 81Scenario: quiz scores
    4. 82Scenario: sports day
Enroll nowOnline classes