4 局部变量和全局变量
局部变量和全局变量
-
在函数中定义的变量称为局部变量,在程序的一开始定义的变量称为全局变量。
-
全局变量作用域是整个程序,局部变量作用域是定义该变量的函数。
-
当全局变量与局部变量同名时,在定义局部变量的函数内,局部变量起作用;在其它地方全局变量起作用。
name = "python"
def change_name(name):
print("before change:",name)
name = "linux"
print("after change", name)
change_name(name)
print(name)
# 输出
before change: python
after change linux
python
不用传name 值到函数里,不可以在函数里调用外面的变量
name = "python"
def change_name():
name = "linux"
print("after change", name)
change_name()
print(name)
# 输出
after change linux
python
作用域
作用域(scope),程序设计概念,通常来说,一段程序代码中所用到的名字并不总是有效/可用的,而限定这个名字的可用性的代码范围就是这个名字的作用域。
如何在函数里修改全局变量?
def change_name():
global name
name = "linux"
print("after change", name)
change_name()
print(name)
# 输出
after change linux
linux