1. 作为函数定义的参数
In [6]: def sample(*args, **kwargs):
...: print args
...: print kwargs
...:
In [7]: sample('hello', 'world', kw={'name': 'Bruce', 'age': 12})
('hello', 'world')
{'kw': {'age': 12, 'name': 'Bruce'}}
2. 作为函数调用的入参
单引号将tuple解开成一个个的变量
In [8]: def sample(a, b, c):
...: print a,b,c
In [12]: tp=('Hello', 'world', 'exciting')
In [14]: sample(*tp)
Hello world exciting
双引号将dict解开成一个个的kv对赋值给函数的参数列表
In [16]: def foo(name='abc', age=12, grade=70):
...: print name, age, grade
In [18]: kw={'name': 'bruce', 'age': 13, 'grade': 85}
In [19]: foo(**kw)
bruce 13 85