码迷,mamicode.com
首页 > 编程语言 > 详细

Python3装饰器

时间:2018-05-18 00:37:06      阅读:278      评论:0      收藏:0      [点我收藏+]

标签:用法   font   添加   mil   .com   python3   实参   info   函数名   

装饰器:本质是函数(装饰其他函数-->为其他函数添加功能)
原则:1.不能被修改装饰的源代码
2、不能修改被装饰的函数的调用方式
知识储备:
1、函数即“变量”
2、高阶函数
3、嵌套函数
高阶函数+嵌套函数 = 装饰器

高阶函数:
a.把一个函数名当做实参传给另一个函数

技术分享图片

b.返回值中包含函数名
嵌套函数:
技术分享图片

仅用高阶函数实现的装饰器

技术分享图片

高阶函数+嵌套函数:实现装饰器。

装饰器函数定义时,通过将需要装饰的函数(装饰器的形参)放在嵌套函数里面,嵌套在内层的函数只进行函数定义,不进行函数的调用(内含的被装饰的函数就不会运行)。然后将装饰后的的嵌套函数地址返回。

技术分享图片
装饰器用法:想装饰什么函数,就在哪个函数上一行头部 @装饰器名称

@装饰器名称

函数名

即:如下写法的简化写法

foo = deco(foo)
foo()

Python3装饰器

标签:用法   font   添加   mil   .com   python3   实参   info   函数名   

原文地址:https://www.cnblogs.com/zhangmingda/p/9053948.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!