分享

python函数可变长参数(*args,**kwargs)

 小猪窝969 2018-11-20
python函数可变长参数:
1.位置参数必须放在关键字参数的左边
2.*针对列表数据,**针对字典数据
3.因为位置参数必须放在关键字参数的左边,所以定义万能参数时*args 只能放在**kwargs参数的左边(准守1的规则)
位置参数:
例如:
def test(x):
return x
test(2)------> 2为位置参数
关键字参数:
例如:
def test(x)
return x
test(x=2)------->x=2为关键字参数
*args 接收位置参数
例如:
def  test(x,*y):
print (x)
print (y)
1.test(1,2,3,4,5)------>输出x=1, y=(2,3,4,5,)
2.test(1,[2,3,4,5,6],1)------>输出x=1,y=([2,3,4,5,6],1,) 如果想循环取出列表内的数据,则:
3.test(1,*[2,3,4,5,6])---->输出x=1,y=(2,3,4,5,6,)
4.test(1,{1:2})------->输出x=1,y=({1:2},)
5.test(1,(1:2))------->输出x=1,y=((1:2),)

**kwargs 接收关键字参数
def  test(x,**y):
print (x)
print (y)
1.test(1,z=2)------>输出x=1, y={'z':2}
2.test(1,**{'z':2})------>输出x=1,y={'z':2} 
*args,**kwargs 接收万能参数
def test(a,*x,**y):
    print (a)
    print (x)
    print (y)
test(1,*[1,2,3],**{"z":2})
输出:
1
(1, 2, 3)
{'z': 2}

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多