函数进阶,就是深入了解函数
1.作用域
变量作用域: 指在变量生效的范围内,主要分为局部变量和全局变量
全局作用域: 全局变量
全局变量: 函数外部定义的变量在整个文件中有效
局部作用域: 局部变量
局部变量: 函数内部定义的变量从定义位置开始到函数定义结束位置有效
注意:
函数间不能共享内部定义的变量格式
函数内可以使用全局变量
global: 将变量声明为全局变量
语法格式: global 变量名
nonlocal: 将变量声明为外层函数的局部变量,而且不能是全局变量
语法格式: nonlocal 变量名
# 局部变量: 函数内部定义的变量,两个函数之间无法相互使用
def funa():
price = 5 # 局部变量,只能在这个函数中使用,函数外部不能使用
print(f'早上买了一碗{num}元的热干面吃')
funa()
def funb():
price = 15
print('中午吃了一份黄焖鸡%s元'%num)
funb()
# 全局变量: 即能在一个函数中使用,也能在其他函数中使用; 在函数外部定义的变量
price = 5 # 全局变量
def func():
print(f'蔡林记的热干面{price}元 ')
def fund():
print(f'老汉口热干面{price}元')
def fund_():
# 加了个鸡蛋2元
price = 7 # 函数内部如果有变量,会先使用内部变量,没有则用