月下的云端 发表于 2019-11-8 15:50:23

不懂,为啥要这么干{:10_266:}{:10_266:}

水继续吹 发表于 2019-11-11 20:44:15

查看参考答案

friendszc 发表于 2019-11-21 17:44:25

没看懂。。

ssssssssss5 发表于 2019-11-24 01:29:38

理解不了的,可以看一下这个,讲的非常详细
https://www.jianshu.com/p/ab702e4d4ba7

panfanfan 发表于 2019-11-27 20:08:37

写的太模糊了吧,新手直接就跳过这一个知识点了,差评

python2python 发表于 2019-12-4 10:32:29

supercyt 发表于 2016-12-30 15:45
这不就行了? 为什么会要内嵌函数?

我也是这样理解。

python2python 发表于 2019-12-4 10:47:27

花椒壹拾伍 发表于 2019-4-28 08:01
例子里面有点没解释清楚,初学者可能半天摸不着头脑,我来说说我的理解,帖子里的这段代码:

可以等价替 ...

这段懂了,感谢分享!

PC加班狗 发表于 2019-12-11 15:01:29

time.clock()过时了。。。3.8给删了{:5_108:}

jiajiaself 发表于 2019-12-16 17:30:32

小甲鱼 这个都说没看懂 请你为大家详细解释一下啊

laiyuanjie 发表于 2020-1-3 10:15:57

time.clock这个东西好像在3.8版本后改了...怎么改有没有大神知道....??

拿了橘子跑哇 发表于 2020-1-30 22:15:52

按文中:
@timeslong
def f():
    y = 0
    for i in range(10):
      y = y + i + 1
      print(y)
    return y
运行,如果运行 a= f(), 结果a根本不会得到y的值,这个例子举的不严谨。

改成下面的代码就可以了。
def timeslong(func):
    def call():
      start = time.clock()
      print("It's time starting ! ")
      func()
      print("It's time ending ! ")
      end = time.clock()
      return "It's used : %s ." % (end - start)
    print(call())
    return func

@timeslong
def ff():
    result = 0
    for i in range(10000):
      result += i
    return result


a = ff()
print("a=%s"%a)

三一王 发表于 2020-1-31 19:19:14

修饰符的来源那里,在python中运行各种报错

嘻哈嘿呵耶 发表于 2020-2-6 21:22:28

谢谢小甲鱼

milliwhat 发表于 2020-2-8 12:19:49

https://blog.csdn.net/972301/article/details/59537712
个人感觉这篇讲的较为通俗易懂,看完了好理解很多

bbzzbb 发表于 2020-2-8 18:00:59

你觉得你讲明白了么??!!!{:10_256:}

751938016 发表于 2020-2-19 16:00:23

这几个代码的缩进好像都有点问题呢!

mandyl1989 发表于 2020-2-24 10:54:31

这个不太懂,有点懵

AINIDEREN 发表于 2020-2-24 14:19:27

没懂,感觉好麻烦,代码量太多

susir哈 发表于 2020-2-25 12:48:56

修饰符可以修饰类吗

弹琴的锤子 发表于 2020-3-3 16:04:27

小甲鱼这篇资料感觉可以修改一下了
第一个是我没办法用time.clock()访问本机当前的时间
第二个是 10以内的循环并不能带来时间差,起始时间和结束时间通过time.time访问并相减=0
页: 2 3 4 5 6 7 8 9 10 11 [12] 13 14 15 16 17
查看完整版本: Python 函数修饰符(装饰器)的使用