python的*args和**kwargs用法

如果我们不确定往一个函数中传入多少参数,或者我们希望以元组(tuple)或者列表(list)的形式传参数的时候,我们可以使用args(单星号)。
如果我们不知道往函数中传递多少个关键词参数或者想传入字典的值作为关键词参数的时候我们可以使用
*kwargs(双星号),args、kwargs两个标识符是约定俗成的用法。

概括如下:

*args:是不带关键字参数,tuple 和 list格式
**kwargs: 是带关键字参数和字典格式
代码辅助理解

def func(*args, ** kwargs):
    print args,kwargs

d = {'s':1, 'r':2}
l = [1,2,3]
func(0, *l, c=2,**d)
#输出 (0,1, 2, 3) {'s': 1, 'r': 2, 'c': 2}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容