这个算是python的大坑了,参数的默认值是在函数定义时创建的,以后每次调用都用的同一个
可以理解成,参数的默认值是函数的一个property
这跟绝大多数其他语言都不一样
所以原则是,不要用空list、dict等作函数默认值,而是用None
【 在 iwannabe 的大作中提到: 】
: #!/usr/bin/env python3
: def foo(x: int, d: dict = {}) -> dict:
: if x == 0:
: ...................
--
FROM 115.171.108.*