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

python基础 带参数以及返回值的函数装饰器

时间:2019-11-25 00:23:37      阅读:106      评论:0      收藏:0      [点我收藏+]

标签:**kwargs   this   def   his   war   博客   函数装饰器   int   返回值   

 1 #带参数以及返回值的函数装饰器,上一篇博客记录了无参数函数装饰器写法以及使用方案,当函数有参数以及返回值时需要将装饰器进行如下修稿
 2 def timer(fun):
 3     def deco(*args,**kwargs): #被装饰函数实际是执行deco,所以在此将被装饰函数参数进行传递
 4         start_time = time.time()
 5         res = fun(*args,**kwargs) #将被装饰函数的返回值接收
 6         stop_time = time.time()
 7         return res #返回被装饰函数的返回值
 8     return deco
 9 
10 @timer #被装饰函数带参数以及有显式返回值
11 def add(x, y):
12     time.sleep(1)
13     print("this is add func")
14     return x+y
15 
16 print(add(1, 2))

 

python基础 带参数以及返回值的函数装饰器

标签:**kwargs   this   def   his   war   博客   函数装饰器   int   返回值   

原文地址:https://www.cnblogs.com/flags-blog/p/11925061.html

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