Python 全局和局部变量

变量有两种类型: 全局变量局部变量

可以在代码中的任何位置访问全局变量,仅在本地作用域可以访问的是本地变量。

局部变量

局部变量只能在其范围内可以访问。

下面的示例有两个局部变量:xy

def sum(x,y):
    sum = x + y
    return sum
 
print(sum(8,6))

变量 xy 只能在函数 sum 中使用,它们不会在函数外部被访问。

局部变量不能在其范围之外使用,此行不起作用:

print(x)

全局变量

全局变量可以在代码中的任何位置使用。

在下面的示例中,我们定义了一个全局变量 z

z = 10
 
def afunction():
    global z
    print(z)
 
afunction()
print(z)

全局变量 z 可以在整个程序、内部函数或外部来使用。

可以在函数内修改全局变量并更改整个程序:

z = 10
 
def afunction():
    global z
    z = 9
 
afunction()
print(z)

在调用 fiunction() 之后,整个程序的全局变量被更改。

练习

局部变量和全局变量可以在同一程序中一起使用。

来确定下下面程序的输出:

z = 10
 
def func1():
    global z
    z = 3
 
def func2(x,y):
    global z
    return x+y+z
 
func1()
total = func2(4,5)
print(total)