上一篇的教材可查看https://blog.csdn.net/qq_45812220/article/details/137812983?csdn_share_tail=%7B%22type%22%3A%22blog%22%2C%22rType%22%3A%22article%22%2C%22rId%22%3A%22137812983%22%2C%22source%22%3A%22qq_45812220%22%7D
本篇在上一篇的基础上,探究适用范围更广的装饰器,即,如何使用同一个装饰器来装饰含有参数个数不相等的函数
def addChina(func):
def inner(*args,**kwargs):
print("你好,来自中国的用户")
func(*args,**kwargs)
return inner
def messageOne(a,b):
print("今天天气是",a,'\t','今天的空气质量为',b)
def messageTwo(a):
print("今天的紫外线强度为",a)
messageOne('晴转多云','优')
messageTwo('较高')
这里我们使用了不定长参数的传递法,不论参数个数为几个,都可以正常传递参数。执行结果为:
你好,来自中国的用户
今天天气是 晴转多云 今天的空气质量为 优
你好,来自中国的用户
今天的紫外线强度为 较高