对于那些喷子,我想说:你可以提意见,可以发表观点,但是动不动就否定别人你是什么意思?你觉得你有那资格?那你怎么不讲课?没人逼着你来看,不喜欢可以不看,请自行默默离开。
2017-01-24
哦!! 原来如此! 上节课的铺垫都是为了这节课的容易理解。
def my_sum(*arg):
return sum(arg)
my_sum = dec(my_sum)
可以使用装饰器来编写:
@dec
def my_sum(*arg):
return sum(arg)
两者功能相同
def my_sum(*arg):
return sum(arg)
my_sum = dec(my_sum)
可以使用装饰器来编写:
@dec
def my_sum(*arg):
return sum(arg)
两者功能相同
2017-01-17
代码中不加f(),直接运行f=func(89)能显示正常结果,增加f()后,除了打印两个89后还打印如下信息:
f()
TypeError: 'NoneType' object is not callable
注:python解释器 是3.6版本
f()
TypeError: 'NoneType' object is not callable
注:python解释器 是3.6版本
2017-01-14
老师定义成与函数my_sum重名不是引起误解,是有意而为之,这就是装饰器的用法,不要误导其他同学。。。名字确实是可以随便定义,但是老师用闭包改写的目的不就是为了重复利用参数检查的那部分代码吗?所以,初衷在于对使用的人来说还是一样,仍然调用最初的my_sum和my_average函数(换成其他函数名,那不成了调用其他函数去了),只不过代码检查的代码只要写一遍就好了,而这个就是装饰器的好处。
2017-01-13