python装饰器返回值_Python之装饰器

本文详细介绍了Python装饰器的概念、形成过程,包括简单装饰器、语法糖、带参数装饰器、带返回值装饰器、带参数的装饰器、多个装饰器的组合使用,以及如何查看装饰器后的函数信息。通过实例展示了装饰器如何实现函数增强,遵循开放封闭原则,允许扩展但避免修改原有代码。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

定义:装饰器本质上就是一个python函数,他可以让其他函数在不需要做任何代码变动的前提下,增加额外的功能,装饰器的返回值也是一个函数对象。

应用场景:比如插入日志、性能测试、事务处理、缓存、权限校验等场景。

一、装饰器的形成过程

1、自定义装饰器

#简单装饰器

import time

def timmer(f):

def inner():

start_time = time.time()

time.sleep(0.1)

f()

end_time = time.time()

print('----> 执行效率:%s' %(end_time - start_time))

return inner

#需要引用装饰器的函数

def func():

print('嘻嘻更健康')

#引用装饰器

func = timmer(func) #inner

func() #inner()

#输出结果

嘻嘻更健康

----> 执行效率:0.10022902488708496

2、装饰器的语法糖

#装饰的语法糖@

def timmer(f): #装饰器

def inner():

f()

return inner

@timmer #@timmer 相当于 func = timmer(func)

def func(): #要引用装器的函数

print('嘻嘻更健康')

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值