共计 770 个字符,预计需要花费 2 分钟才能阅读完成。
args 和 *kwargs 次要⽤于函数定义。
# 留神:规范参数与 *args、**kwargs 在使⽤时有程序要求
def test_var(firstVar, *args, **kwargs):
print(f"第一个地位参数:{firstVar}")
# for arg in args:
# print(f"其余地位参数{arg}")
print(f"*args={args}")
# for key, value in kwargs.items():
# print(f"其余关键字 参数{key}={value}")
print(f"**kwargs={kwargs}")
首先,魔法变量args 和kwargs 中,变量名 args 与 kwargs 只是两个艰深的命名约定非固定不变,能够其余命名vars,kwars。
而后,魔法体现在 和上。args 示意变量 args 接管不定数量,非命名参数,返回一个元组 – 所有没有名字无人认领的传入参数组成程序元组。kwargs 示意变量 kwargs 接管不定数量,关键字命名参数,返回一个字典 – 所有以“keyName=value“模式传入的参数组成字典。
代码中的规范参数,就是地位参数 firstVar。
函数定义,参数程序:规范参数→args→*kwargs
调用函数,传参程序:地位参数→关键字参数
最初,测试利用。
if __name__ == "__main__":
test_var("888", 5, 6, "abc", average=55, score=63, stuName="WuLiLy")
输入:
第一个地位参数:888
*args=(5, 6, 'abc')
**kwargs={'average': 55, 'score': 63, 'stuName': 'WuLiLy'}
最最初,晓得参数是怎么传递的,也晓得参数保留的中央,那么函数里的操作就有很大空间,函数的性能也会更加丰盛容纳。
正文完