Local variables and global variables differ primarily in their scope and accessibility:
-
Scope:
- Local Variables: Defined within a specific function or block and can only be accessed within that function or block. They are not visible outside of their defined scope.
- Global Variables: Defined outside of any function and can be accessed from anywhere in the code, including inside functions.
-
Lifetime:
- Local Variables: Exist only for the duration of the function call. Once the function exits, the local variable is destroyed.
- Global Variables: Exist for the entire duration of the program's execution. They remain in memory until the program terminates.
-
Usage:
- Local Variables: Used for temporary storage of data that is only relevant within a specific function.
- Global Variables: Used for data that needs to be shared across multiple functions or throughout the program.
Here’s an example in Python to illustrate the difference:
# Global variable
global_var = "I'm global"
def my_function():
# Local variable
local_var = "I'm local"
print(local_var) # Accessible here
print(global_var) # Accessible here
my_function()
print(global_var) # Accessible here
# print(local_var) # This would raise an error because local_var is not accessible here
In this example, global_var can be accessed both inside and outside my_function(), while local_var can only be accessed within my_function().
