Python变量作用域(全局变量和局部变量)

2年前 (2024-04-27)
所谓作用域(Scope),就是变量的有效范围,就是变量可以在哪个范围以内使用。有些变量可以在整段代码的任意位置使用,有些变量只能在函数内部使用,有些变量只能在 for 循环内部使用。

变量的作用域由变量的定义位置决定,在不同位置定义的变量,它的作用域是不一样的。本节我们只讲解两种变量,局部变量全局变量

Python局部变量

在函数内部定义的变量,它的作用域也仅限于函数内部,出了函数就不能使用了,我们将这样的变量称为局部变量(Local Variable)。

要知道,当函数被执行时,Python 会为其分配一块临时的存储空间,所有在函数内部定义的变量,都会存储在这块空间中。而在函数执行完毕后,这块临时存储空间随即会被释放并回收,该空间中存储的变量自然也就无法再被使用。

举个例子:

def demo():

add = "http://c.biancheng网站站点" rel="nofollow" /> 函数内部 add = http://c.biancheng网站站点" rel="nofollow" />

def demo(name,add):

print("函数内部 name =",name)

print("函数内部 add =",add)

demo("Python教程","http://c.biancheng网站站点" rel="nofollow" /> 函数内部 name = Python教程
函数内部 add = http://c.biancheng网站站点" rel="nofollow" /> 全局变量(Global Variable)。

和局部变量不同,全局变量的默认作用域是整个程序,即全局变量既可以在各个函数的外部使用,也可以在各函数内部使用。

定义全局变量的方式有以下 2 种: