可变位置参数*args
*args为一个列表,用于向函数传递数量可变的参数,我觉得相当于Java和C++中的重载,所以Python没有重载,示例如下:
def args_test(*args):
for arg in args:
print(arg)
args_test(1)
args_test(1, 2)
可变关键字参数**kwargs
*kwargs是一个字典,以键值对的形式传入不定量的参数,和args有点像,只是从长度可变的列表变成了长度可变的字典,示例如下:
def kwargs_test(**kwargs):
for key in kwargs:
print(key, kwargs[key])
kwargs_test(a=1)
kwargs_test(a=1, b=2)
网友评论