Functions – Scope
Variables defined inside a function are local and cannot be accessed outside it
Understanding Functions – Scope in Python
What it does: Functions can read global variables without the 'global' keyword. 'global count' declares that count refers to the global variable. Local variables only exist inside the function they're created in. Global variables are defined at the top level and accessible everywhere. x is local to func() — it disappears when the function ends. Inside func, x='local' creates a local x that shadows the global. Each function has its own local scope — same names don't conflict. NameError means Python can't find the variable name — it's out of scope.
Common mistakes: x is local to func it can't be accessed outside. Print inside the function. x is local and dies when func ends. Use return to get the value out.
Free printable worksheet with full answer key — or add this module to a class and your students practise it interactively.
This module's key terms are also in a printable crossword (Modules 21–30) and word search (Modules 21–40).
Take this worksheet further — free with Cloodit
Each concept is reinforced from every angle — learned, then applied, then tested.
Cloodit turns curriculum-aligned coding content into journeys students work through one biome at a time.
Over 100 of them, across seven natural biomes.
Turns their work into revision material ready for Flash Cards and Exam study.
Live, competitive practice for the start of the lesson or a teacher-led lesson finisher.
Honour your top performers, or encourage a student who's trying hard — ready to print in seconds.
Quick Questions
Match the Pairs
Key Term
ScopeFill in the Blanks
Spot the Error
Student with a class code? Join your class →