*星号(asterisk)主要在函数定义和函数调用时使用。与C语言中的指针无任何关系。
1.函数定义时
- 使用单个*会将所有的参数,放入一个元组tuple供函数使用
- 使用**会将所有的关键字参数,放入一个字典dict供函数使用
2.函数调用时
- 在list,tuple,set前加*,会将容器中所有元素解包unpack变成位置参数
- 在dict前加*,会将dict字典的键key 变成位置参数
- 在dict前加**,会将dict的键值对变成关键字参数
1 a = {a':'Ass','b':'We','c':'Can} 2 3 Ank(*a)--------------->Ank("a", "b", "c") 4 5 Ank(**a)--------------->Ank(a = "Ass" ,b = "We", c = "Can")