8.全局变量与局部变量

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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.全局变量与局部变量的主要内容,如果未能解决你的问题,请参考以下文章

局部变量与全局变量

19.8.9(全局变量和局部变量的作用域)

全局变量与局部变量

局部变量 静态局部变量 全局变量与静态局部变量

局部变量与全局变量

C语言 若全局变量与局部变量同名,分析结果