最赞回答 / Awful_Leo
装饰器的本质是闭包。def outer(f): def inner(x): #1 return f(x) #2 return inner #3f = out(f)f(x)看上面这个函数,我先定义一个outer函数,这个函数的1,2,3行都做了些什么呢?首先1,2两行我定义另一个函数,但是先不执行,我先放在这,后面用的时候再执行。然后我把定义的这个inner函数返回去。接下来调用的时候,inner函数再执行。那inner函数都干什么事呢?执行f(x)函数并返回结果...
2019-03-17
最新回答 / qq_慕运维2396039
try: print (p.__score)except AttributeError: print("AttributeError")注意缩进
2019-03-10
最赞回答 / 薛定谔与猫
这个其实吧,我觉得不会用到,我们做开发的时候有规范,像这样接收任意参数作为属性,其实不会遇到。因为这样的话每个调用的开发都可能想出各种各样的属性,你根本没有数据规范,甚至说同样意思的属性,也会有五花八门的英语名称,你怎么整理和规范属性呢,取出的时候难道去猜测全部的可能?或者全部遍历出来再写一套程序自动规范?如果那样还不如一开始就在设计类的时候就设计好不是吗?
2019-03-05
最新回答 / DEBUG自习室
def calc_prod(lst): def prod(): j=1 sum = 0 for i in lst: j=i*j sum +=j return j return prodf = calc_prod([1, 2, 3, 4])print (f())需要把每次计算后的值相加得到总和
2019-03-05