函数


nonlocal
  • 使用 nonlocal 关键字可以改变外部函数的变量,特别是在嵌套函数中。这是 nonlocal 的主要作用之一。
  • nonlocal 是一个在 Python 中用于指示变量的作用域的关键字。它通常用在嵌套函数中,以允许你在内部函数中修改外部函数的局部变量,而不会创建一个新的同名局部变量。
  • 在 Python 中,通常有三种作用域:
    1. 局部作用域(Local scope):定义在函数内部的变量只能在该函数内部访问。
    2. 嵌套作用域(Enclosing scope):嵌套函数可以访问包含它们的外部函数的变量。
    3. 全局作用域(Global scope):在模块级别定义的变量可以在模块中的任何地方访问。
  • 有时,当在嵌套函数中尝试修改一个外部函数的局部变量时,Python 会默认将这个变量解释为一个新的局部变量,而不是修改外部函数的变量。这就是使用 nonlocal 的情况。

文章作者: Chipfron
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 Chipfron !
  目录