def function()
num = 1
num += 1
return num
num是绑定变量还是自由变量?
P.S。这段代码是用python编写的。在此之前没有以前的代码。
答案 0 :(得分:1)
从python doc:如果名称绑定在块中,则它是该块的局部变量,除非声明为非本地。如果名称在模块级别绑定,则它是全局变量。 (模块代码块的变量是局部变量和全局变量。)如果变量在代码块中使用但未在那里定义,则它是一个自由变量。
此处num
在function
中定义,因此与其绑定。
您可以从SO查看this other post以获得自由变量的示例