在Python中,local
关键字用于在函数内部声明一个局部变量。局部变量只在函数内部有效,当函数执行完毕后,局部变量会被销毁。这意味着局部变量不会影响到函数外部的代码或全局变量。
下面是一个简单的例子来说明局部变量如何影响函数调用:
# 全局变量 global_var = "I am a global variable" def my_function(): # 局部变量 local_var = "I am a local variable" # 函数内部访问全局变量 print("Inside the function, accessing global variable:", global_var) # 函数内部访问局部变量 print("Inside the function, accessing local variable:", local_var) # 调用函数 my_function() # 访问全局变量 print("Outside the function, accessing global variable:", global_var) # 试图访问局部变量(这将导致错误) print("Outside the function, trying to access local variable:", local_var)
输出:
Inside the function, accessing global variable: I am a global variable Inside the function, accessing local variable: I am a local variable Outside the function, accessing global variable: I am a global variable Outside the function, trying to access local variable: NameError: name 'local_var' is not defined
从输出中可以看到,局部变量local_var
仅在my_function
内部有效,而在函数外部无法访问。这有助于保护数据封装和避免意外修改全局变量。