Real Python 3, from your first variables to files, error handling, searching and sorting, classes and automated tests, finishing with a quiz app that saves scores to a file. It pairs well with the IGCSE Computer Science programming topic by turning its ideas into working code.
Lesson 1 is free to try. The other 15 lessons in Python are for schools on RudimentaryLabs.
Values, variables, input and output, decisions and loops, fast enough for beginners and solid enough to build on.
Working with text, and storing many values at once in lists, tuples, dictionaries and sets.
Organising code into functions, keeping data in files, coping with things that go wrong, and using Python's standard library.
Searching and sorting, designing your own types with classes, testing your code automatically, and a complete mini project.