py装饰器与偏函数

一、装饰器

1、将函数赋值给对象

函数对象有一个name属性,可以拿到函数的名字

2、装饰器decorator

在代码运行期间动态增加功能(在函数调用前后自动打印日志)的方式
本质是一个返回函数的高阶函数

3、接受一个函数作为参数,并返回一个函数

通过@,将decorator置于函数定义处
@log
def now():
print('2017-5-21')

注:原来指向now()函数的now变量指向了新的函数,于是调用的时候,调用新函数(首先打印日志,再调用原始函数)

二、偏函数(functools模块中)

更改函数中的默认参数,创建一个新的函数
int2 = functools.partial(int,base=2)

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 函数式编程就是一种抽象程度很高的编程范式,纯粹的函数式编程语言编写的函数没有变量,因此,任意一个函数,只要输入是确...
    齐天大圣李圣杰阅读 1,553评论 0 2
  • 装饰器 定义: 假设我们要增强now()函数的功能,比如,在函数调用前后自动打印日志,但又不希望修改now()函数...
    summer_lz阅读 479评论 0 0
  • 要点: 函数式编程:注意不是“函数编程”,多了一个“式” 模块:如何使用模块 面向对象编程:面向对象的概念、属性、...
    victorsungo阅读 1,562评论 0 6
  • 微雨落霜天,红叶飘无数。寂寞清秋向晚愁,斜倚栏杆处。 初见恨别离,轻抚相思物。又恐重逢未有期,雾锁迷津渡。
    大漠封狼居胥阅读 862评论 4 4