频道栏目
首页 > 资讯 > Python > 正文

python函数参数中*args,**kwargs的使用和意义

17-09-06        来源:[db:作者]  
收藏   我要投稿

*args和*kwargs是python中经常使用的函数参数,代表着函数的参数数目是可变的。

为讲解清楚两个参数的意义,以下一段代码为例做讲解:

def fun(*args,**kwargs):
        print "args = ",args
        print "kwargs = ",kwargs

(1)fun(1,2,3,4)

输出结果:

args= (1, 2, 3, 4)

kwargs= {}

说明:在fun函数使用的时候,1,2,3,4全部传给了args,是一个元祖/tuple(可类似的认为是C语言中的constchar[]),而kwargs中没有任何元素,故为空。

(2)fun(a=1,b=2,c=3,d=4)

输出结果:

args= ()

kwargs= {'a': 1, 'c': 3, 'b': 2, 'd': 4}

说明:此时,kwargs中的元素组成了一个字典(dict),args没有任何元素,故为空。

(3)fun(3,2,1,a=4,b=5,ss=123)

输出结果:

args= (3, 2, 1)

kwargs= {'a': 4, 'ss': 123, 'b': 5}

说明:跟(1)和(2)一样。

(4)fun(4,5,1,2,'hello',a='qwe',b='asd',c='zxc')

输出结果:

args= (4, 5, 1, 2, 'hello')

kwargs= {'a': 'qwe', 'c': 'zxc', 'b': 'asd'}

说明:

args可以存字符串,数字。

注意:在函数的参数同时有*args和**kwargs时,args的使用必须要在kwargs的前面,否则编译器会报错。

相关TAG标签
上一篇:python3 入门必学内容
下一篇:信息论实验-Hamming编码
相关文章
图文推荐

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训 | 举报中心

版权所有: 红黑联盟--致力于做实用的IT技术学习网站