一.默认参数的陷阱 先看如下例子: def func(li=[]): li.append(1) print(li) func() func() func(li=['abc']) func() 结果: 可以看到,默认参数不传值使用默认值时,多次调用函数li始终使用同一个列表. 如果默认参数是一个可变数据类型,每一次调用函数时,不传值就公用这个数据类型的资源. 使用pycharm写代码的时候,若在函数定义时将可变数据类型用作默认参数,pycharm会给出提示: Default argument va…