PYTHON LESSON

Topic 31/63 · Phase 4: Functional Programming

Scope (LEGB) — Python lesson on EduBard (phase: Functional Programming)

Scope (LEGB)

Main idea

Python resolves names in Local, Enclosing, Global, Builtin order.

Tip

Pass values explicitly.

Watch out

Unintended global dependency.

Read this next

You will study Scope (LEGB). It belongs to the Functional Programming phase.

Remember this:
Python resolves names in Local, Enclosing, Global, Builtin order.

Practice step by step. Do not rush. Each run should show you something new.

Tip:
Pass values explicitly.

Avoid this:
Unintended global dependency.

Your challenge:
Fix a scope bug in a nested function.

Go to the challenge lab below. Fix errors until the output looks right. Then press the green button to complete the topic.

Example code

Copy this example if it helps. Change it so it matches Scope (LEGB).

# Topic: Scope (LEGB)
def main():
    sample = "edit me"
    # TODO: apply Scope (LEGB) concept here
    result = sample
    print("Result:", result)

if __name__ == "__main__":
    main()

Challenge

Fix a scope bug in a nested function.

Before you can finish: your output should include at least 16 characters; at least 1 non-empty line(s); no crash traceback—fix errors until the program runs cleanly.

Use Run. Read the output. Change your code until the task is done.

Starter reference

# Challenge starter for Scope (LEGB)
def solve():
    # Write your solution here
    pass

print("Update solve() and run")

Your code

The first Run may load Python in your browser (one-time). Later runs are faster.



    
    

Navigation