1.python 可变参数类型:1.*args、2.**kwargs
2.区别:* args没有key,而**kwargs有key
3.使用方式:
- 1.*args可以使用数组和元组
- 2.**kwargs可以使用字典作为参数
4.注意点:2种参数同时使用的时候,需要把 *args 放在前面,而**kwargs放在后面
5.例子:
def t_args(p, *args):
"""
把数组、元组作为参数传递给*args
:param p:
:param args:
:return:
"""
print p
for a in args:
print a
def t_kw(p, **kwargs):
"""
把字典作为可变参数
:param p:
:param kwargs:
:return:
"""
print p
for k in kwargs:
print k, '=', kwargs[k]
def t_args_kw(p, *args, **kwargs):
"""
既有 *args、又有 **kwargs 的参数
:param p:
:param args:
:param kwargs:
:return:
"""
print p
for a in args:
print a
for k in kwargs:
print k, '=', kwargs[k]
if __name__ == '__main__':
args = [1, 2, 3]
args1 = ('a', 'b', 'c')
d = {'id': 1, 'name': 'dada', 'age': 20}
t_args('b', *args)
print '=================='
t_args('c', *args1)
print '=================='
t_kw('d', **d)
t_kw('name', a=1, b=2, c=3)
print '=================='
t_args_kw('e', *args, **d)