python 装饰器的个人理解
装饰器作用:Python装饰器就是用来修改函数的功能的。怎么理解呢?
修改函数功能当然可以直接在函数里面修改,为什么要引入装饰器?举个例子:现在系统已经上线了,项目经理(天杀的)突然突发奇想,我要明确的知道某些重要功能
函数(大概500个吧)的执行日志,WTK,怎么办???,我要重新修改500个函数,天啊,这么多重复操作,我要做这么多次,一个一个改,当然行。有没有其他简便的
方法呢?当然有,装饰器上场。


当然了,有精力完全可以按照下面的搞法来做:

Python中引入装饰器,可以大大简化上面的操作,并且可以重复使用
import time #定义装饰器函数(需要把装饰的能容写好,比如打印日志、套循环等操作) def zsq_timelog(afun): def zsq_timelog_warp(): print('这是调用函数之前需要处理的操作') print('调用函数的时间为:'+time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())) afun() print('这是调用函数之后需要处理的操作') return zsq_timelog_warp @zsq_timelog #使用@装饰器名来装饰函数 def jacksayhello(): print('jack hello') @zsq_timelog def tomsayhello(): print('tom hello') @zsq_timelog def davidsayhello(): print('david hello') if __name__ == '__main__': jacksayhello() tomsayhello() davidsayhello()

posted on 2019-12-04 16:45 SmartTony_07 阅读(168) 评论(0) 收藏 举报
浙公网安备 33010602011771号