我是参考《疯狂python讲义》学习的,主要是把一些比较陌生的知识点记录下来。
python函数中支持的参数类型有:
位置参数(可以带默认值):按照形参位置传入的参数
关键字参数:根据参数名传入的参数
参数收集(个数可变的参数):在形参前面加一个*,意味着参数可以接受多个参数值,这些参数值被当成元组传入
关键字参数收集(个数可变的关键字参数):在形参前面加2个*,意味着参数可以接受多个参数值,将关键字参数收集成字典
python规定:
函数定义时带默认值的参数定义在形参列表的最后,正确示例如下:
def test(a, b="hello"):
pass
函数定义时个数可变的参数可以处于形参列表的任意位置,正确示例如下:
def test(*a, b=1):
print(a)
print(b)
函数调用时关键字参数必须位于位置参数的后面,错误示例如下:
test(b="test", 10)
其实有很多示例需要在实战中运用,本人的摘录如果有不足之处,欢迎批评指正!