擅长:python、mysql、java
<p>要使<code>x</code>成为函数<code>f()</code>中的全局变量:</p>
<pre><code>def f():
global x
x = 0
def g():
global x
x += 1
print(x)
g()
f()
# 1
</code></pre>
<p/><hr/>
如注释中所述,<code>x</code>的“全局”状态在这里是毫无意义的,因此最好将<code>x</code>作为参数传递给<code>g()</code>,如下所示:
<pre><code>def f():
x = 0
def g(x):
x += 1
print(x)
g(x)
f()
# 1
</code></pre>
<p>这不仅使您的代码更简洁,而且消除了“全局”的开销</p>