变量有两种类型:全局变量和局部变量。全局变量可以在代码中的任何位置访问,局部变量只能在作用域中访问。

可以在代码中的任何位置访问和修改全局变量(x),局部变量(z)仅存在于块 3 中。
局部变量
局部变量只能在其作用域内达到。下面的示例有两个局部变量:x和y。
def sum(x,y):sum = x + yreturn sumprint(sum(8,6))
变量x和y只能在函数sum之内使用,而在函数外部则不存在。局部变量不能在其作用域之外使用,此行将不起作用:
print(x)
全局变量
全局变量可以在代码中的任何位置使用。在下面的示例中,我们定义了全局变量z
z = 10def afunction():global zprint(z)afunction()print(z)
全局变量z可以在整个程序中,函数内部或外部使用。可以在函数内部修改全局变量,并为整个程序进行更改:
z = 10def afunction():global zz = 9afunction()print(z)
调用afunction()之后,将更改整个程序的全局变量。
练习
局部变量和全局变量可以在同一程序中一起使用。尝试确定该程序的输出:
z = 10def func1():global zz = 3def func2(x,y):global zreturn x+y+zfunc1()total = func2(4,5)print(total)
