为什么在使用函数定义函数后能够定义变量?

Vor*_*tex 2 python arguments function list data-structures

我有一个非常简单但也许是愚蠢的问题:

为什么这样做?

def print_list():
    for student in student_list:
        print(student)

student_list = ["Simon", "Mal", "River", "Zoe", "Jane", "Kaylee", "Hoban"]
print_list()
Run Code Online (Sandbox Code Playgroud)

我已经知道函数和参数的方式,函数print_list()不应该识别,student_list因为我没有将它作为函数的参数赋值.

wim*_*wim 6

在您调用时print_list(),您已将student_list其定义为全局变量.