擅长:python、mysql、java
<p>实际上,当你在结果中使用j时,变量i仍然是4,因为在第一个循环之后,i仍然是数字4</p>
<p>但是如果在结果中使用i,我指的是存储在结果中的函数。我是不会修好的,直到你开始叫它。正如@Jean fraçois Fabre所说,懒惰的评价。在</p>
<p><strong>另外</strong>,如果您希望内部函数存储1-4循环时的每个i,则应将i存储在相关的<strong>范围内</strong>,使用<strong>部分</strong>函数</p>
<pre><code>from functools import partial
results = []
for i in [1, 2, 3, 4]:
def inner(i, y):
return i
results.append(partial(inner, i))
for i in results:
print(i(None))
</code></pre>
<p>这将为您提供</p>
^{pr2}$
<p>更有意义。在</p>