
因为默认参数在函数定义时只被计算一次,所以应该改成元组,避免axes被函数内部改变。 当默认参数是可变对象(比如列表或字典)时,如果在函数中修改了这个对象,那么这个修改会在函数的后续调用中被保留。
例子:
def test_add(li=[1, 2, 3]):
li.append(0)
print(li)
test_add()
test_add()
test_add()
输出
[1, 2, 3, 0]
[1, 2, 3, 0, 0]
[1, 2, 3, 0, 0, 0]
文章讲解了Python函数中默认参数的潜在问题,特别是当默认值为可变类型(如列表)时,如何避免因内部修改影响多次调用结果。
546

被折叠的 条评论
为什么被折叠?



