python --函数学习之全局变量和局部变量

定义在函数内部的变量拥有一个局部作用域,定义在函数外的拥有全局作用域。

局部变量只能在其被声明的函数内部访问,而全局变量可以在整个程序内访问。

在调用函数的时候,所有在函数内声明的变量名称都被加到作用域中:👇👇👇

1 total = 0  #定义了一个全局变量
2 def sum(a,b):  #定义了一个sum函数
3     total = a+b #total在这里就是一个局部变量
4     print(total)  
5     return total
6 sum(10,20) #调用sum函数
7 print(total)。#此时total就是一个全局变量,返回的应当就是之前定义的0
30
0

 但是,当内部作用域想要修改外部作用域的变量的时候,就可以用到global和nonlocal关键字了 👇👇👇

total = 0  #定义了一个全局变量
def sum(a,b):  #定义了一个sum函数
    global total  #需要使用global关键字
    total = a+b #total在这里就是一个局部变量
    print(total)  
    return total
sum(10,20) #调用sum函数
print(total) #此时total就是一个全局变量,返回的应当就是之前定义的0
30
30

 

posted @ 2019-06-04 22:37  正霜霜儿  阅读(3597)  评论(0)    收藏  举报