擅长:python、mysql、java
<p>lambda正在调用<code>m</code>,将其从本地作用域中拉出。在for循环结束后,<code>m</code>被设置为<code>two</code>。调用<code>c.one</code>或{<cd5>}将导致{<cd3>}被调用。在</p>
<p>通过查看回溯的最后一行,可以知道正在调用<code>two</code>:</p>
<pre><code>TypeError: two() takes exactly 2 arguments (1 given)
</code></pre>
<p><a href="http://math.andrej.com/2009/04/09/pythons-lambda-is-broken/" rel="nofollow noreferrer">A good demonstration of what is going on can be found here.</a></p>
<p>这应该符合您的预期,但有点混乱:</p>
^{pr2}$
<p>我还删除了未绑定方法的显式创建,因为它是不必要的。在</p>