内部函数访问外部函数的变量
这个问题在这里已经有了答案:
外函数的变量只有在该函数运行时才可用,即当my_outer_function结束时它会消失。
这并非完全正确。 该变量在my_outer_function
的作用域中可用。 my_inner_function
具有其自己的声明范围及其父级范围。
my_inner_function
引用的变量不在其自己的作用域内,因此这些引用在父域的作用域不再可用时作为闭包绑定到my_inner_function
。 要了解关于闭包的更多信息,请参阅可以解释闭包(因为它们与Python有关)? (摘自Paul Rooney的评论)