Python里的args和*kwargs
*args接收参数
当函数预先不知道调用者会传多少个参数的时候,*args 是⽤来发送⼀个⾮键值对的可变数量的参数列表给⼀个函数 例如:
def func_args(*args):
for i in args:
print(i)
func_args(1, 2, 3)
1
2
3
*args传递参数
*args可以用来将多个参数传递给函数,例如
def func_test_args(x, y, z):
print("x", x)
print("y", y)
print("z", z)
t = (1, 2, 3)
func_test_args(*t)
x 1
y 2
z 3
**kwargs接收参数
**kwargs参数的函数可以接收多个键值对组成的参数,例如
def func_kwargs(**kwargs):
for i, v in kwargs.items():
print(i, "-", v)
func_kwargs(name="zhf", age=10)
name - zhf
age - 10
**kwargs传递参数
使用**kwargs传递多个键值对参数
def func_test_kwargs(name, age):
print("name is", name)
print("age is", age)
k = {"name": "zhf", "age": 10}
name is zhf
age is 10