详情请参考之前写的知识总结
Python004函数
快捷知识点
函数参数的顺序
位置参数,*args,默认参数,**kwargs
一道恶心的题
1 2 3
| def xx(a = []): a.append(1) print(a)
|
调用方式一:
1 2 3 4 5 6 7 8 9 10
| xx() xx() xx() xx()
结果 [1] [1,1] [1,1,1] [1,1,1,1]
|
调用方式二:
xx()
xx([]) # 传递了参数
xx()
xx()
结果
[1]
[1]
[1,1]
[1,1,1]
如果默认参数的值是一个可变数据类型,那么每次调用函数的时候,如果不传就公用这个数据类型的资源