python装饰器简介以及语法糖原理
2018-04-19 19:30
211 查看
版权声明:本文为博主原创文章,转载请注明出处: https://blog.csdn.net/qq_31603575/article/details/80009651
装饰器简介
#装饰器在不改变原先的函数代码的情况下,给原来的函数添加额外的功能(原则上不修改) #装饰器不会去改变原来函数的参数及结果 #装饰前的函数,是由func指向的 #装饰后的函数,是指向了call_fun #万能装饰器 def set_fun(func): def call_fun(*args, **kwargs): """这边添加新的功能,如权限验证""" return func(*args, **kwargs) return call_fun @set_fun def test(): pass
简单装饰器
"""简单装饰器以及语法糖原理""" def set_func(func): print('开始装饰---') def call_func(): print('验证---') func() return call_func # 已上线功能(不可修改) def money_action(): print("转账1个亿") # func 指向money_action的引用 即print("转账一个亿") # set_func 返回 call_func的引用,即xxx 指向到 call_func的引用 xx = set_func(money_action) # 这边执行到call_func的声明跳过 返回call_func ,即第4行,在这边执行 # call_func() ===> print('验证') print("转账一个亿") xx() # 执行call_func中的代码 print("="*90) # 装饰器语法糖详解 @set_func # @set_func 就相当于 money_action1=set_func(money_action1) def money_action1(): print("转账2个亿") money_action1()阅读更多
相关文章推荐
- Python基础语法(3)——文件流、异常处理、面向对象编程以及装饰器
- Android OTA升级原理和流程分析(九)---updater-script脚本语法简介以及执行流程
- Android OTA升级原理和流程分析(九)---updater-script脚本语法简介以及执行流程
- Android OTA升级原理和流程分析(九)---updater-script脚本语法简介以及执行流程
- python高级语法-装饰器(语法糖)
- python_语法糖_装饰器
- 蒙版原理以及Python简单实现
- Android系统Recovery工作原理之使用update.zip升级过程---updater-script脚本语法简介以及执行流程
- Ansible使用jinja2管理配置文件以及jinja2语法简介
- Python的语法和(以及一些模块介绍)
- yaml简介以及在python上的应用
- Python学习笔记之发展史、简介以及特点
- Particle Filter 粒子滤波 原理以及python实践二
- python3 字符编码问题原理简介
- Python基础语法学习--元祖和字典以及相关操作和方法
- Blend Behavior的 使用简介 实现原理以及在MVVM框架的妙用
- base64编码原理以及python中的base64模块
- Python基础--正則表達式基本的语法以及re模块
- Denosing Autoencoder原理以及结果简介
- T4系列文章之2:T4工具简介、调试以及T4运行原理