5
# example.py
def foo(arg=bar()):
pass
将执行bar
甚至from example import foo
。
我记得很久以前我看到的东西,如:
# example.py
def foo(arg=lambda: bar()):
pass
,但我不知道这是否是最好的方式,现在,当我坚持这一点,我无法找到任何信息关于如何处理这种行为。
在python中将函数调用作为默认函数参数的正确方法是什么?
在哪种情况下,你想绑定到'arg'的函数被调用?何时输入'foo'?当'foo'被调用?其他时间? –
@StevenRumbalski,当它被调用。我发现wim回答了我正在寻找的东西。 – pythad