#每天一点点#
python 局部变量 vs 全局变量,global 修改全局变量
局部变量
以温度为栗,假设目前获取温度为33摄氏度,然后将该温度打印出来
#局部变量
def get_temp():
temp = 33
return temp
def print_temp():
print('温度是:%d'%temp)
result = get_temp()
#如果一个函数有返回值,但是没有在调用函数之前,用个变量保存的话,那么,没有任何意义
print_temp(result)
输出结果 →→→→→print_temp() takes 0 positional arguments but 1 was given
全局变量
定义一个全局变量 temp
temp = 0 #定义一个全局变量
def get_temp():
temp = 33
'''
如果temp这个变量已经在全局变量的位置定义了,
后边想在任何一个函数中对这个全局变量进行修改的话,
仅仅是一个temp=值,还不够,
此时temp这个变量是局部变量,仅仅是和全局变量的名字相同而已
'''
def print_temp():
print('温度是:%d'%temp)
get_temp()
print_temp()
输出结果 →→→→→ 温度是:0
为什么不是33??不是在get_temp中将温度修改为33了吗?
为什么打印出来还是0度呢?
global 修改全局变量呢
#global 修改全局变量
temp = 0
def get_temp():
global temp # global修改全局变量
temp = 33
def print_temp():
print('温度是:%d'%temp)
get_temp()
print_temp()
输出结果 →→→→→ 温度是:33