Learn with Yasir

Share Your Feedback

Local and Global Variables in Python: Explained with Examples and Tasks | Python for Beginners


Learn the difference between local and global variables in Python with simple explanations, practical examples, and beginner-friendly tasks. Understand constants, best practices, and how to manage variables effectively in your programs.

Table of Contents

  1. Local Variables
  2. Global Variables
  3. Constants
  4. Best Practices
  5. Tasks

1. Local Variables

What is a Local Variable?

  • Local variables are variables declared inside a function. They can only be accessed within that function and are destroyed when the function completes execution..
  • It only exists while the function is running.
  • You cannot use it outside the function.

Characteristics:

  • Created when the function starts
  • Only accessible within the function
  • Destroyed when the function exits

Example:

def greet():
    message = "Hello, world!"  # local variable
    print(message)

greet()

# This will cause an error:
# print(message)

message is local to greet() and can’t be accessed outside.


Key Points:

  • Local variables are created when the function starts.
  • They are destroyed when the function ends.
  • They do not affect variables outside the function.

Task for Students:

Write a function called add_numbers that:

  • Takes two numbers as input.
  • Adds them together.
  • Stores the result in a local variable.
  • Prints the result.

Example Solution:

def add_numbers(a, b):
    result = a + b
    print("Sum:", result)

add_numbers(5, 10)

2. Global Variables

What is a Global Variable?

  • A global variable is a variable that is declared outside all functions and can be accessed throughout the entire program..
  • It can be used both inside and outside functions.

Example:

name = "Ali"  # global variable

def greet():
    print("Hello", name)

greet()
print("Goodbye", name)

name is accessible inside and outside the function.


Changing a Global Variable Inside a Function

  • If you want to modify a global variable inside a function, you must use the global keyword.
count = 0

def increment():
    global count
    count += 1

increment()
print(count)  # Output: 1

Without global, Python would create a new local variable named count.

Python Tutorial: Local vs Global Variables in Python


3. Constants

  • A constant is a variable that should not change once assigned.
  • In Python, constants are typically declared as global variables with ALL_CAPS names by convention.
  • Python does not force constants, but developers treat them as unchangeable.

In programming:

  • A convention is a common habit or best practice that developers choose to follow to make code more readable and consistent.
  • Python itself does not force it, but good programmers still follow it.

Example:

PI = 3.14159  # constant

def area_of_circle(radius):
    return PI * radius * radius

print(area_of_circle(5))

PI = 3.14159  # This is a constant (by convention)
TAX_RATE = 0.20  # Another constant

def calculate_tax(amount):
    return amount * TAX_RATE

print(calculate_tax(100))  # Output: 20.0

4. Best Practices:

  1. Avoid excessive use of global variables as they can make code harder to maintain
  2. Use ALL_CAPS for constants to indicate they shouldn’t be modified
  3. When you must use global variables, declare them clearly at the top of your file

5. Tasks:

Task #1: Global Variable Task

  • Create a global variable called language set to "Python".
  • Write a function show_language() that prints "I love Python!" using the global variable.

Task #2:

  • Define a constant GRAVITY = 9.8.
  • Write a function weight_on_earth(mass) that calculates and returns the weight.

Task #3:

Create a program with:

  1. A global constant DISCOUNT set to 0.10
  2. A global variable total_purchases initialized to 0
  3. A function make_purchase(amount) that adds to total_purchases and applies the discount
  4. A function show_total() that prints the current total

🧠 Practice & Progress


Explore More Topics

📘 Learn Python

Tutorials, Roadmaps, Bootcamps & Visualization Projects

Python Fundamentals

Flow Control Statements


Python Functions


Fundamentals more ...




🧠 Python Advanced

Object-Oriented Programming in Python (OOP)

More...

🧠 Modules