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

results matching ""

    No results matching ""