Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我知道为什么我们需要在 Python 中声明 nonlocal 并且对以下示例有点困惑。如果没有nonlocal records第 276records行,则第 277 行没有定义。但是,records可以在第 289 行中使用而不会出现任何错误。
nonlocal records
records
以下是非本地的情况,效果很好。
nonlocal声明类似于global声明。仅当函数分配给变量时才需要两者。通常,这样的变量将成为函数的局部变量。nonlocalandglobal声明导致它引用存在于函数外部的变量。
nonlocal
global
如果函数没有分配给变量,则不需要声明,它会自动在更高的范围内查找它。