Programming languages 非局部变量和全局变量之间的区别是什么?
我正在学习编程语言的概念 我在python语法中找到了术语“非本地”Programming languages 非局部变量和全局变量之间的区别是什么?,programming-languages,python-nonlocal,Programming Languages,Python Nonlocal,我正在学习编程语言的概念 我在python语法中找到了术语“非本地” 非局部在python中的含义是什么?非局部语句使列出的标识符引用最近封闭范围内以前绑定的变量。这很重要,因为绑定的默认行为是首先搜索本地名称空间。该语句允许封装的代码将变量重新绑定到全局(模块)范围之外的局部范围之外 与全局语句中列出的名称不同,非局部语句中列出的名称必须引用封闭范围中预先存在的绑定(不能明确确定应在其中创建新绑定的范围) 非局部语句中列出的名称不得与局部范围中预先存在的绑定冲突非局部变量存在于嵌套循环中。使用
非局部在python中的含义是什么?非局部语句使列出的标识符引用最近封闭范围内以前绑定的变量。这很重要,因为绑定的默认行为是首先搜索本地名称空间。该语句允许封装的代码将变量重新绑定到全局(模块)范围之外的局部范围之外 与全局语句中列出的名称不同,非局部语句中列出的名称必须引用封闭范围中预先存在的绑定(不能明确确定应在其中创建新绑定的范围)
非局部语句中列出的名称不得与局部范围中预先存在的绑定冲突非局部变量存在于嵌套循环中。使用关键字nonlocal,并从最近的封闭循环中获取值。例如:-
def outer():
x=“本地”
def inner():
非局部x
x=“非本地”
打印(“内部:”,x)
内()
打印(“外部:”,x)
当x的值被内部函数更改时,两次输出都是“非本地”的。请参见