函数的初始化只会进行一次,也就是说 默认参数也只初始化一次, 而不是每次调用都会重新初始化 默认参数。
def f(a, l = []):
...
等价于
initial_value = [] # 不管调用多少次f, 在不对l传参时 都会共用这个初始值
def f(a, l = initial_value):
...
【 在 lazyfintech 的大作中提到: 】
: 翻历史贴,偶然发现一个帖子,自己不明白了
: 求教该如何理解
: >>> def f(a, l = []):
: ...................
--
修改:lambo FROM 135.0.250.*
FROM 135.0.250.*