首页 > 代码库 > 8.全局变量与局部变量

8.全局变量与局部变量

全局变量与局部变量

 

1.申明:为了代码的可读性,我们通常将全局变量的变量名全部大写,局部变量还是安装常规写法

PERSON = "wuwen"    #定义全局变量
def func():
    person = "吴文" #定义局部变量
    print(PERSON)
    print(person)

func()
print(PERSON)
print(person)

解读:全局变量作用于整个代码块儿,所以再函数func中,我们也能输出PERSON变量

   局部变量只是作用于定义它的那一部分范围,在范围之外,我们无法使用它

因此,以上代码的执行结果如下图所示  

技术分享

2.如何在函数体内修改全局变量呢

错误做法

PERSON = "wuwen"    #定义全局变量
def func():
    person = "吴文" #定义局部变量
    PERSON = "WuWen"
    print(PERSON)
    print(person)

func()
print(PERSON)

执行结果如下

技术分享

解读:在函数体能,能调用全局变量,但是不能用简单赋值的方式去修改全局变量

   如果按以上操作,我们只会新建了一个值为"WuWen"的局部变量,所以两

   次输出的结果不一样

 

正确方法:

PERSON = "wuwen"

def func1():
    print(PERSON)
    global PERSON
    PERSON = "WuWen"

func1()
print(PERSON)

解读:先申明改变量为全局变量,再做修改  

 

8.全局变量与局部变量