九、python 函数多类型传参和冗余传参

本文深入探讨了Python中函数的多种参数传递方式,包括多类型传参如整型、元组、字典,以及如何处理冗余参数。通过具体实例展示了如何使用*和**操作符来灵活地传递元组和字典参数。

函数的多类型传值和冗余参数

多类型传参(传的参数变量必须和行参一致)

In [2]: def fun(x,y):
   ...:     return x+y
   ...:

In [3]: print fun(3,5)
8

将元组的参数传进去需要加个*
In [4]: t=(1,2)

In [5]: fun(*t)
Out[5]: 3

In [6]: fun(x=2,y=3)
Out[6]: 5
将字典的参数传进去,传字典需要加**
In [7]: dic={'x':1,'y':2}

In [8]: fun(**dic)
Out[8]: 3

冗余参数(处理传入过多的参数或者少的参数)

def fun(x,y,*args,**kwargs)
传一个*就是元组,传** 就是字典
In [11]: def fun(x,*aa,**bb):
   ....:     print x
   ....:     print aa
   ....:     print bb
   ....: 
传一个参数
In [12]: fun(1)
1
()
{}
传2个
In [14]: fun(1,2,'a')
1
(2, 'a')
{}
传3个值
In [15]: fun(1,2,'a',[1,2])
1
(2, 'a', [1, 2])
{}
可以直接传元组变量
In [22]: fun(1,2,'a',[1,2],*t)
1
(2, 'a', [1, 2], 1, 2)
{}

In [23]: t
Out[23]: (1, 2)


传3个类型值,将字典也传入进去
In [16]: fun(1,2,'a',[1,2],y=3,z=3)
1
(2, 'a', [1, 2])
{'y': 3, 'z': 3}

传入字典的其他方式
In [25]: fun(1,2,'a',[1,2],*t,**{'v':4})
1
(2, 'a', [1, 2], 1, 2)
{'v': 4}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值