首先让我告诉你, 其实并不是必须写成*args和**kwargs只有变量前面的*(星号)才是必须的。
你也可以写成*var和**vars而写成
*args和**kwargs只是一个通俗的命名约定。def test_args_kwargs(arg1, arg2, arg3):
print("arg1:", arg1)
print("arg2:", arg2)
print("arg3:", arg3)
args = ("two", 3, 5)
test_args_kwargs(*args)
print("----------------------------------")
kwargs = {"arg3":3, "arg2":"two", "arg1":5}
test_args_kwargs(**kwargs)
运行结果:
arg1: two
arg2: 3
arg3: 5
----------------------------------
arg1: 5
arg2: two
arg3: 3