python标志变量_Python 中的 global 标识对变量作用域的影响
global 标识用于在函数内部,修改全局变量的值。
我们可以通过以下规则,来判定一个变量到底是在全局作用域还是局部作用域:
变量定义在全局作用域,那就是全局变量。
变量在函数中定义,并且加了 global 标识,就是全局变量。
如果变量在函数中仅做了定义,那么就是局部变量。
如果变量在函数中仅仅是使用,那么就是全局变量。
下面的示例,有助于理解上述规则:
def cook():
global dumplings
dumplings = '10' # 全局变量
print('cook():' + dumplings)
def cook2():
dumplings = '22' # 局部变量
print('cook2():' + dumplings)
def cook3():
print('cook3():' + dumplings) # 全局变量
dumplings = 3 # 全局变量
cook()
print('global:' + dumplings)
cook3()
cook2()
运行结果:
cook():10 global:10 cook3():10 cook2():22
注意:在函数中,如果在变量定义之前先使用它,就会抛错:
def cook():
print(dumplings)
dumplings = 'local'
dumplings = 'global'
cook()
运行结果:
UnboundLocalError: local variable 'dumplings' referenced before assignment
因为在函数中,存在对 dumplings 的定义赋值语句,所以被认为是局部变量。所以在定义之前,先访问这个局部变量就会抛错。
总结
以上所述是小编给大家介绍的Python 中的 global 标识对变量作用域的影响,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!
python标志变量_Python 中的 global 标识对变量作用域的影响相关推荐
- python 类中静态变量_Python中的类或静态变量
python 类中静态变量 Python类/静态变量 (Python Class / Static Variables) Class or Static variables are class-rel ...
- [转载] python不允许使用关键字_Python中关键字global与nonlocal的区别
参考链接: Python全局关键字 版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/xCyansun/article/details/79672634 ...
- python中nonlocal是什么意思_Python中的global和nonlocal
在Python中,一个变量的scope范围从小到大分成4部分:Local Scope(也可以看成是当前函数形成的scope),Enclosing Scope(简单来说,就是外层函数形成的scope), ...
- python global 变量_python中global变量释疑
疑问 为什么main中不能写global x语句? 在函数中如何修改global变量? 在main中修改了global变量后,在子进程中为什么没有效果? 如何利用进程池的initializer参数(函 ...
- python中global什么意思_python中的global关键字的使用方法
摘要 global 标志实际上是为了提示 python 解释器,表明被其修饰的变量是全局变量.这样解释器就可以从当前空间 (current scope) 中读写相应变量了. Python 的全局变量是 ...
- python中global的使用_PYTHON中使用GLOBAL引发的一系列问题
In [96]: def x(): b = 12 def y(): global a,b a = 1 b = 2 y() print "b =",b ....: In [97]: ...
- python的常量和变量_python中的常量和变量代码详解
局部和全局变量: # name='lhf' # def change_name(): # # global name # name='帅了一比' # print('change_name',name) ...
- python中的global是什么意思_Python中的global关键字,你了解吗?
前言 今天来了解下 Python 中的 global 关键字. Python变量的作用域 实战案例演示之前,先要了解下 Python 的作用域. 曾经在闭包的文章 <python小课堂26 - ...
- python 获取值类型用于定义变量_Python中的变量和简单数据类型
变量: 变量是存储在内存中的值,在创建变量时会在内存中开辟一个空间. 变量可以指定不同的数据类型,这些变量可以存储整数,小数或字符串. 基于变量的数据类型,解释器会分配指定内存,并决定什么数据可以被存 ...
最新文章
- 【Docker学习笔记(三)】Hello world!
- ajax webservice 参数类型,JQuery Ajax WebService传递参数的简单实例
- 福利来了!国内TOP3的超级云计算,免费领2000核时计算资源!
- 系统制成docker镜像_docker镜像原理 镜像制作 dockerfile
- 前端学习(1158):对象结构01
- 万字长文丨1分36秒,100亿,支付宝技术双11答卷:没有不可能
- bootstrap中分页、面包屑导航、列表组、卡片、下拉菜单、折叠
- OracleExcel VBA写获取表字段类型及约束语句
- devops失败的原因_如果没有这7个部门的支持,您的DevOps尝试将失败。
- leetcode题解102-翻转二叉树
- 学习Haskell的一些资料
- tourex旅游系统 php,TourEx 旅游电商系统B2C_B2B2C v7.0升级V8.0 旅游源码系统无限制版源码工程源码...
- 使用cmd查看电脑显卡的信息
- 行为树 --- [4] 简单树
- FreeRTOS笔记篇:第四章 -- 队列管理
- 计算机综合评价论文,关于模糊综合评价记忆计算机英语论文
- 微信小程序之map地图
- 【目标检测】使用python代码实现视频转为图片
- 用友服务器自动检测,安装用友T3环境检测提示:不可识别的操作系统,怎么办?...
- 六元均匀直线阵的各元间距为_微波技术与天线复习题
热门文章
- 【Flink】Flink checkpoint was declined
- flink 1.9.0 编译:flink-fs-hadoop-shaded 找不到
- 06-R环境中的工作空间(workspace)概念
- mysql 实验7,MySQL5.7多源复制的实验
- Java中含有泛型的 JSON 反序列化问题
- 剑指Offer55-II题解-平衡二叉树
- Spring框架----Spring的bean的生命周期
- golang实现四种排序(快速,冒泡,插入,选择)
- MySQL数据库事务及其特性
- Django学习(一)---基本配置及创建项目、应用