Bird
Raised Fist0
Pythonprogramming~5 mins

Global scope in Python - Cheat Sheet & Quick Revision

Choose your learning style10 modes available

Start learning this pattern below

Jump into concepts and practice - no test required

or
Recommended
Test this pattern10 questions across easy, medium, and hard to know if this pattern is strong
Recall & Review
beginner
What is global scope in Python?
Global scope means a variable is defined outside any function and can be accessed anywhere in the program.
Click to reveal answer
beginner
Where can a variable declared in the global scope be used?
It can be used inside functions, outside functions, and in any part of the program after its declaration.
Click to reveal answer
intermediate
What keyword do you use inside a function to modify a global variable?
You use the global keyword to tell Python you want to change the global variable inside the function.
Click to reveal answer
intermediate
What happens if you assign a value to a variable inside a function without using global?
Python treats it as a new local variable, and the global variable remains unchanged.
Click to reveal answer
beginner
Example: What will this code print?
count = 5
def add():
    global count
    count += 1
add()
print(count)
It will print 6 because the function modifies the global variable count using the global keyword.
Click to reveal answer
What does the global keyword do inside a function?
AMakes a variable private
BCreates a new local variable
CDeletes a global variable
DAllows modifying a variable defined outside the function
If a variable is defined outside any function, what is its scope?
AGlobal scope
BLocal scope
CBlock scope
DFunction scope
What will happen if you assign a value to a variable inside a function without declaring it global?
AIt creates a new local variable
BIt deletes the global variable
CIt causes a syntax error
DIt changes the global variable
Can a global variable be accessed inside a function without the global keyword?
ANo, it cannot be accessed
BYes, but it cannot be modified
CYes, and it can be modified
DNo, it causes an error
Which of these is true about global variables?
AThey are only accessible inside functions
BThey are created using the <code>local</code> keyword
CThey exist throughout the program after declaration
DThey cannot be changed once set
Explain what global scope means and how it affects variable access in Python.
Think about where the variable is defined and where you can use it.
You got /3 concepts.
    Describe how to modify a global variable inside a function and why the global keyword is needed.
    Consider what Python does by default when you assign a variable inside a function.
    You got /3 concepts.

      Practice

      (1/5)
      1. What does the global keyword do inside a Python function?
      easy
      A. It deletes a global variable.
      B. It creates a new local variable inside the function.
      C. It makes the function run faster.
      D. It allows the function to modify a variable defined outside the function.

      Solution

      1. Step 1: Understand the role of global keyword

        The global keyword tells Python that the variable inside the function refers to the variable defined outside (in global scope).
      2. Step 2: Effect on variable modification

        Without global, assigning a value creates a new local variable. With global, it modifies the existing global variable.
      3. Final Answer:

        It allows the function to modify a variable defined outside the function. -> Option D
      4. Quick Check:

        global keyword modifies outer variable [OK]
      Hint: global lets functions change outside variables [OK]
      Common Mistakes:
      • Thinking global creates a new local variable
      • Assuming global deletes variables
      • Believing global affects performance
      2. Which of the following is the correct way to declare a global variable inside a function?
      easy
      A. def global x:
      B. global = x
      C. global x
      D. x global

      Solution

      1. Step 1: Recall correct syntax for global declaration

        The correct syntax is to write the keyword global followed by the variable name, separated by a space.
      2. Step 2: Check each option

        global x matches the correct syntax. Others are invalid Python syntax.
      3. Final Answer:

        global x -> Option C
      4. Quick Check:

        global keyword followed by variable name [OK]
      Hint: Use 'global' then variable name to declare global inside function [OK]
      Common Mistakes:
      • Using '=' with global keyword
      • Trying to define global like a function
      • Placing global after variable name
      3. What will be the output of this code?
      count = 5
      def increment():
          global count
          count += 1
      increment()
      print(count)
      medium
      A. 6
      B. None
      C. Error
      D. 5

      Solution

      1. Step 1: Understand the global variable usage

        The variable count is defined globally with value 5. Inside increment(), global count allows modifying this global variable.
      2. Step 2: Trace the function call and print

        The function adds 1 to count, changing it from 5 to 6. Then print(count) outputs 6.
      3. Final Answer:

        6 -> Option A
      4. Quick Check:

        global lets function change count to 6 [OK]
      Hint: global lets function update outside variable [OK]
      Common Mistakes:
      • Expecting original value 5 to print
      • Thinking global causes error here
      • Assuming function returns None
      4. Find the error in this code:
      total = 10
      def add():
          total += 5
      add()
      print(total)
      medium
      A. Missing global declaration inside add()
      B. Syntax error in function definition
      C. total is not defined globally
      D. print statement is incorrect

      Solution

      1. Step 1: Identify variable scope issue

        Inside add(), total += 5 tries to modify total. Without global total, Python treats total as local but it's used before assignment, causing an error.
      2. Step 2: Fix by adding global declaration

        Adding global total inside add() tells Python to use the global total variable, fixing the error.
      3. Final Answer:

        Missing global declaration inside add() -> Option A
      4. Quick Check:

        Modify global variable needs global keyword [OK]
      Hint: Add global keyword to modify global variable inside function [OK]
      Common Mistakes:
      • Ignoring need for global keyword
      • Thinking total is local automatically
      • Assuming no error occurs
      5. You want to count how many times a function is called using a global variable. Which code correctly updates the global counter?
      hard
      A. calls = 0 def func(): calls += 1 func() print(calls)
      B. calls = 0 def func(): global calls calls += 1 func() print(calls)
      C. calls = 0 def func(): calls = calls + 1 func() print(calls)
      D. calls = 0 def func(): global calls calls = calls func() print(calls)

      Solution

      1. Step 1: Understand global variable modification

        To update a global variable inside a function, you must declare it with global inside the function.
      2. Step 2: Analyze each option

        calls = 0 def func(): calls += 1 func() print(calls) tries to increment without global, causing error. calls = 0 def func(): global calls calls += 1 func() print(calls) correctly uses global calls and increments. calls = 0 def func(): calls = calls + 1 func() print(calls) tries to read and assign without global, causing UnboundLocalError. calls = 0 def func(): global calls calls = calls func() print(calls) declares global but does not increment.
      3. Final Answer:

        calls = 0 def func(): global calls calls += 1 func() print(calls) -> Option B
      4. Quick Check:

        global keyword needed to update global variable [OK]
      Hint: Use global keyword to update global counter inside function [OK]
      Common Mistakes:
      • Forgetting global keyword causes UnboundLocalError
      • Assigning without global causes UnboundLocalError when reading variable
      • Declaring global but not updating variable