PYTHON高级--函数装饰器(在不改动原始函数的基础上,在之前添加处理操作)

def set_func(func):
	print("装饰器开始装饰")
	def call_func(*args,**kwargs):
		print("开始执行额外功能")
		#将传进来的变量拆包,并执行原始要添加装饰器的函数功能
		func(*args,**kwargs)

	#将添加完装饰器的函数引用,返回给原始函数,来执行
	#装饰器功能+原始功能。
	return call_func

#@set_func 相当于执行set_func函数了,然后将额外功能加在原始功能之前,然后整体执行函数
@set_func
def ceshi(num,*args,**kwargs):
	print("原始功能")
	print(num)
	print(args)
	print(kwargs)

ceshi(11, 22, 33, name="laowang", age=18)


*********************************结果****************************************
装饰器开始装饰
开始执行额外功能
原始功能
11
(22, 33)
{'name': 'laowang', 'age': 18}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值