第十一章:函数和函数式编程

11.3 函数(与方法)装饰器

什么是装饰器?
装饰器实际就是函数。一般来说,我们包装一个函数是为了要用,而通过装饰器,我们可以在包装的环境下运用它,因为看到装饰器函数的时候可以在其中发现一些定义了某个函数并在定义内的某处嵌入了对目标函数的调用或者至少一些引用。
同时可以在装饰器中置入通用功能的代码来降低程序复杂度,例如,可以用装饰器来:

  • 引入日志
  • 增加计时逻辑来检测性能
  • 给函数加入事物的能力
    例子:deco.py
    from time import ctime, sleep
    def tsfunc(func):
    def wrappedFunc():
    print '[%s] %s() called' % (
    ctime(), func.name)
    return func()
    return wrappedFunc
    @tsfuncdef
    foo():
    pass
    foo()
    sleep(3)
    for i in range(2):
    sleep(1)
    foo()

函数式编程

函数式编程可以应用在调试和性能测量方面上。
python提供的以四种内建函数和lambda表达式的形式出现。

你可能感兴趣的:(第十一章:函数和函数式编程)