Python函数可变参数kwargs

Python函数可变参数kwargs教程

Python 中,函数参数可变参数 还可以支持以 字典 的形式进行传递。

Python函数可变参数kwargs定义详解

语法

def func_name(param1, **params): pass

参数

参数 描述
def 定义函数所使用的关键字,所有的函数前面都必须使用该关键字。
func_name 函数的名称。
param1 函数的形参 1。
param2 函数的关键字参数。

说明

我们定义了一个名为 func_name 的函数,其中参数 params 是可变参数,并且该可变参数是字典的形式。

Python函数可变参数kwargs遍历详解

语法

def func_name(param1, **params): for key, value in params.items(): pass

说明

我们使用 for in 语法,可以遍历得到可变参数的所有的参数。

案例

Python函数可变字典形式参数

Python 函数可变参数字典形式,可以传入任意个数的参数

print("嗨客网(www.haicoder.net)") # Python 函数可变参数字典形式,可以传入任意个数的参数 def info(**args): for key, value in args.items(): print(key, "--->", value) info(Site="HaiCoder", Module="Python")

程序运行后,控制台输出如下:

21_python函数可变参数字典形式.png

我们定义了一个函数 info,该函数的参数是一个可变参数 args,且该可变参数是字典形式的,在该函数体中,我们使用 for in 循环遍历可变参数中的每一个参数,并打印可变字典参数的 key 和 value。

最后,我们调用该函数,并以键值对的形式传入了两对参数,我们看到,最终,程序输出了我们传入的所有键和值。

Python函数可变参数

Python 函数可变参数,是最后一个参数

print("嗨客网(www.haicoder.net)") # Python 函数可变参数,是最后一个参数 def info(prefix, **args): print(prefix) for key, value in args.items(): print(key, "--->", value) info(Site="HaiCoder", Module="Python", prefix="Info")

程序运行后,控制台输出如下:

22_python函数可变参数字典形式.png

我们定义了一个函数 info,该函数的接受一个普通的参数 prefix,和一个可变参数 args,其中,可变参数是最后一个参数且是字典的形式。

因此,我们在调用该函数时,通过关键参数的形式传入了参数 prefix,其他所有的参数都会做为可变参数处理。

Python函数参数可变参数kwargs总结

在 Python 中,函数的参数的可变参数还可以支持以字典的形式进行传递。Python 函数可变参数字典形式定义:

def func_name(param1, **params): pass

Python 函数可变参数遍历语法:

def func_name(param1, **params): for key, value in params.items(): pass