擅长:python、mysql、java
<p>这是因为<code>user</code>的赋值在这里:</p>
<pre><code>def postloop(self):
user = 'lilith'
return user
</code></pre>
<p>作用于变量的本地实例。要影响全局变量<code>user</code>,需要添加:</p>
<pre><code>global user
</code></pre>
<p>到那个函数的顶端。尽管我不推荐它,因为通常有比使用globals更好的方法。你知道吗</p>
<p>关于globals和python的一个注释。如果没有<code>global</code>关键字,就不能给全局var赋值,但是如果没有它,就可以读取全局(和其他非本地)作用域。这允许您创建闭包。你知道吗</p>