您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

Python中默认参数的范围是什么?

Python中默认参数的范围是什么?

范围是您所期望的。

可能令人惊讶的是,认值仅计算一次并重新使用,因此每次调用函数时,您将获得相同的列表,而不是初始化为[]的新列表。

该列表存储在中f.func_defaults

def f(a, L=[]):
    L.append(a)
    return L

print f(1)
print f(2)
print f(3)
print f.func_defaults
f.func_defaults = (['foo'],) # Don't do this!
print f(4)

结果:

[1]
[1, 2]
[1, 2, 3]
([1, 2, 3],)
['foo', 4]
python 2022/1/1 18:35:27 有209人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶