我需要具有必须在函数运行时设置的默认参数的函数(例如空列表、从其他参数派生的值或从数据库中获取的数据),我目前正在使用以下模式来处理这个问题:
def foo(bar, baz=None):
baz = baz if baz else blar()
# Stuff
Where给出了在执行过程中可能会改变blar()
的正确默认值。baz
然而,这baz = baz if baz else ...
条线让我觉得不雅。有没有其他人有更好的方法来避免一次性绑定默认函数参数?可通过 pip 安装的小型跨平台库是可接受的替代品。