1print()
Say it, and the dragon says it.
The first line a child writes. Whatever sits inside the quotes comes out of the dragon's mouth — letter for letter, typo for typo.
print("Wake up!")Wake up!
print("Wake up!")speaks
Ages 10–14Real Python, in the browser
There's a dragon asleep on a pile of gold. It only wakes for one thing: real Python code, written by you.
The core idea
The dragon reacts to exactly what was written — what got printed, which branch the if took, how many times the loop ran.
1print()
The first line a child writes. Whatever sits inside the quotes comes out of the dragon's mouth — letter for letter, typo for typo.
print("Wake up!")Wake up!
print("Wake up!")speaks
2if · elif · else
Set gold to 80 and the dragon goes back to sleep. The branch that runs is the one the code chose — not the one the child hoped for.
gold = 120if gold > 100: print("Guard the hoard!")else: print("Back to sleep...")
Guard the hoard!
gold > 100True
3for · range()
range(3) counts 0, 1, 2 — and stops. Every topic is built around a mistake beginners really make, so this one gets met head-on instead of discovered later.
for i in range(3): print("Flap!")
0Flap!
1Flap!
2Flap!
range(3)0, 1, 2
How a topic teaches
Every idea runs the same four-step cycle. A child is never handed an empty editor and told to figure it out.
One idea at a time, in short steps a child clicks through — never a wall of text before the first thing they get to do.
A quick check that the idea landed, answered before any code is written. A wrong answer is explained, not just marked wrong.
The first attempt comes with help in reach — the shape of the answer is there, and the child completes it.
Two or three tasks with no scaffolding, ending in a challenge that combines everything in the topic and introduces nothing new.
After three failed runs the game offers the answer without being asked. Getting stuck is normal; staying stuck until a child gives up is a design failure, so the help arrives on its own.
The journey
From the very first print() to writing clean code. Each topic ends with a challenge that combines everything in it.
Pricing
No subscription, no renewals, no time limit on the free part. The paid tier adds topics; it never takes anything away.
Execution order, print() and variables — every segment. No card required, and the first level needs no account at all.
$49.99Pay once.That's it.
if and loops through functions, errors and clean codeFor parents & teachers
There is no advertising anywhere in Pythonoid, and no analytics software of any kind — nothing measures what a child clicks or how long they play. What is stored is an account, its progress, and nothing sold or shared with anyone.
Every line a child writes is genuine, runnable Python — the same language used in industry. Nothing has to be unlearned later, because there is no drag-and-drop stand-in to unlearn.
Python runs inside the browser tab itself, so it works on a school-managed device. Code a child writes never runs on our servers.
Ages 10 to 14. That lower bound is deliberate: meaningful code typing — reading error messages, matching brackets, spelling keywords exactly — generally becomes comfortable around 10 or 11. A younger child can absolutely enjoy it alongside an adult, but the reading and typing load is pitched at 10+.
No. The first topic starts from the very first line of Python, and assumes nothing. Basic comfortable typing and reading is all that is needed.
The first 3 topics are free, start to finish, with no time limit and no card required. Everything after that — every remaining topic plus the optional challenge track — unlocks with a single one-time PRO purchase: $49.99, no subscription.
An account needs an email address and a password, or a Google sign-in — that applies to every player, including children. Alongside it we store progress: levels finished, stars, and which plan the account is on, plus a nickname if your child chooses to set one. No real name is asked for, no date of birth, no address or location, and there is no analytics software of any kind. Nothing is sold, shared, or shown to other players, and there is no advertising in the game. The Privacy page lists every field exactly, and names the one third-party script that does run.
No. Python runs inside the browser tab itself — there is nothing to install, no account needed on the computer, and it works on a school-managed device. Code a child writes never runs on our servers.
Real Python. The same interpreter, the same syntax, the same error messages. Code written in Pythonoid would run unchanged in any Python environment.
One line of Python wakes it. About thirty seconds — and no account needed.
Play the first level free