nonlocal和global的区别
第一,两者的功能不同。global关键字修饰变量后标识该变量是全局变量,对该变量进行修改就是修改全局变量,而nonlocal关键字修饰变量后标识该变量是上一级函数中的局部变量,如果上一级函数中不存在该局部变量,nonlocal位置会发生错误(最上层的函数使用nonlocal修饰变量必定会报错)。
第二,两者使用的范围不同。global关键字可以用在任何地方,包括最上层函数中和嵌套函数中,即使之前未定义该变量,global修饰后也可以直接使用,而nonlocal关键字只能用于嵌套函数中,并且外层函数中定义了相应的局部变量,否则会发生错误
nonlocal和global的区别相关推荐
- php中globals,PHP中$GLOBALS和global的区别
在PHP中经常遇到$GLOBALS和global来定义和访问全局变量,那么在什么地方该用$GLOBALS,而什么地方该用global呢?这就需要我们清除了解$GLOBALS和global的区别,我也谈 ...
- Python3 关键字nonlocal和global的用法与区别
关键字nonlocal 在Python 2.x中,闭包只能读外部函数的变量,而不能改写它. 为了解决这个问题,Python 3.x引入了nonlocal关键字,在闭包内用nonlocal声明变量,就可 ...
- Python nonlocal 与 global 关键字解析
nonlocal 首先,要明确 nonlocal 关键字是定义在闭包里面的.请看以下代码: x = 0 def outer():x = 1def inner():x = 2print("in ...
- python中nonlocal是什么意思_Python中关键字nonlocal和global的声明与解析
请问Python3的关键字有哪些 python一共有35个关键字,在python37版本,新添加了async和await,可以通过import keyword借用keyword模块中的kwlist方法 ...
- PHP学习:PHP超全局变量(Superglobal)$GLOBALS的介绍以及和global的区别
PHP超全局变量有很多,如下的都属于超全局变量Superglobal $GLOBALS,$_SERVER,$_GET,$_POST,$_FILES,$_COOKIE,$_SESSION,$_REQUE ...
- nonlocal和global关键字
回顾: 1. Python的函数的概述函数定义函数调用2. Python函数中参数的类型和返回值形参和实参形参类型:普通参数: 实参的传递的顺序和个数和形参一直关键字参数: 指定传递的实参被特定形参接 ...
- [转]nonlocal和global
在Python中,当引用一个变量的时候,对这个变量的搜索是按找本地作用域(Local).嵌套作用域(Enclosing function locals).全局作用域(Global).内置作用域(bui ...
- globle php,php中global与$GLOBAL的区别分析
大多数的人都会以为global和$GLOBALS[]只是在写法上面有所不同,但是实际上并不是这样的,下面我们就来看一下它们之间究竟有何区别. 根据官方的解释是 $GLOBALS['var'] 是外部的 ...
- globle php,PHP中$GLOBALS与global的区别详解
PHP中$GLOBALS和global都可以实现全局变量的功能,所以很多人都认为global和$GLOBALS[]只是写法上面的差别,其实不然.$GLOBALS 是一个超级全局变量,其实是一个数组,而 ...
最新文章
- Exchange2007 中Send as 与Send on behalf of 讲解
- 视频监控系统防雷设计方案
- 【扫盲】什么是FTP、FTPS 和 SFTP?
- c/c++宏函数的定义与使用(宏定义函数)(macro definition)
- 华为照片在哪个文件夹_原来华为手机还能这样清理垃圾,怪不得你的手机可以多用5年...
- 安杰文高等计算机与生产技术学校,法国留学院校推荐:安杰文高等计算机与生产技术学校...
- android中常见的错误及解决办法
- 自用的获取时间 传值是获取剩余时间 不传是获取当前时间
- linux下安装xz命令
- 四大原因告诉你:云为什么比传统IT系统更安全
- 预定义类型未定义或导入_LimeSurvey基础教程(二)——问题类型
- 【canvas】linejoin——miterLimit
- 翻译:iOS上的MVVM + RxSwift架构对比 MVC,MVVM,MVP和VIPER
- Python操作Kafka例子
- 易语言静态连接器提取_vc98linker修复静态编译
- mysql coreseek_Coreseek使用
- 命名实体识别难在哪?
- 腾讯Bugly工具介绍节选
- python簇状柱形图_使用Matplotlib绘制堆积条形图
- 南大通用GBase XDM支持的操作平台