擅长:python、mysql、java
<p>在Python中,变量是在赋值时创建的。在您的例子中,<code>student_list</code>是在全局范围内赋值的,因此它是一个全局变量。(全局范围是不在函数中的内容。)</p>
<p>当Python在一个不是局部变量的函数中遇到一个变量时(也就是说,它没有作为参数传入,也没有在函数中赋值),它会自动在全局范围中查找该变量。你知道吗</p>
<p>如果您想知道<code>global</code>语句的目的是什么,因为全局变量在函数中已经是可见的:<code>global</code>允许您重新分配一个全局变量,并使它全局生效。例如:</p>
<pre><code>def b():
global a
a = 5
a = 4
print(a) # prints 4
b()
print(a) # prints 5
</code></pre>
<p>在大多数情况下,您不需要<code>global</code>语句,我建议您不要使用它,尤其是在您对Python有更多的经验之前。(尽管如此,即使是有经验的Python程序员也不会经常使用<code>global</code>)</p>