擅长:python、mysql、java
<p>至于它为什么起作用:</p>
<p>with_default_value返回一个函数对象,它基本上是嵌套newfunc的<em>副本</em>,其中“func”调用和默认值将以传递给“default”_value的任何内容作为子项。在</p>
<p>如果有人做了'foo=with_default_value(bar,3)',返回值基本上将是一个新函数:</p>
<pre><code>def foo(name, val):
ifismissing(name, val):
return 3
else:
return bar(val)
</code></pre>
<p>所以你可以取这个返回值,然后调用它。在</p>