最近的病情比较严重,大家少出门哈,多在家看看书,每天进步一点点!
解释下Python装饰器,并举例说明如何使用
首先解释下什么叫装饰器,所谓装饰器本质是一个python函数,可以在其他函数调用该函数的时候,不修改原代码而添加新的功能,减少代码的复用率,装饰器的返回值也是一个函数对象。
总结就是:不修改被装饰函数的调用方式、不修改被调用函数的源代码
作用域:
全局作用域:定义的文件级别的变量、函数名,在全局不能访问到局部的变量
局部作用域:定义在函数的内部 ,在局部能访问全局的变量,不能修改全局定义的变量
全局变量适用于当前文件中所有方法的调用,若要修改全局变量,要在全局修改。若函数内部未查找到变量,会去全局变量中查找,若都不存在,会报错。
看了这么多文字,一定会很无聊吧,下面请看代码~
a = 1
def test():
a = 10 /*存在局部变量,取局部变量*/
print(a) /*a=10*/
test()
print(a) /*a=1*/
a = 1
def test():
# 没有局部变量,调用全局变量
print(a) /*a=1*/
test()
print(a) /*a=1*/