Python中定义函数时,若想在函数内部对函数外的变量进行操作,就需要在函数内部声明其为global。

例子1
x = 1

def func():
    x = 2

func()
print(x)
输出:1 
在func函数中并未在x前面加global,所以func函数无法将x赋为2,无法改变x的值

例子2
x = 1

def func():
    global x
    x = 2

func()
print(x)
输出:2 
加了global,则可以在函数内部对函数外的对象进行操作了,也可以改变它的值了

例子3
global x
x = 1

def func():
    x = 2

func()
print(x)
输出:1 
global需要在函数内部声明,若在函数外声明,则函数依然无法操作x