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 标识对变量作用域的影响相关推荐

  1. python 类中静态变量_Python中的类或静态变量

    python 类中静态变量 Python类/静态变量 (Python Class / Static Variables) Class or Static variables are class-rel ...

  2. [转载] python不允许使用关键字_Python中关键字global与nonlocal的区别

    参考链接: Python全局关键字 版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/xCyansun/article/details/79672634 ...

  3. python中nonlocal是什么意思_Python中的global和nonlocal

    在Python中,一个变量的scope范围从小到大分成4部分:Local Scope(也可以看成是当前函数形成的scope),Enclosing Scope(简单来说,就是外层函数形成的scope), ...

  4. python global 变量_python中global变量释疑

    疑问 为什么main中不能写global x语句? 在函数中如何修改global变量? 在main中修改了global变量后,在子进程中为什么没有效果? 如何利用进程池的initializer参数(函 ...

  5. python中global什么意思_python中的global关键字的使用方法

    摘要 global 标志实际上是为了提示 python 解释器,表明被其修饰的变量是全局变量.这样解释器就可以从当前空间 (current scope) 中读写相应变量了. Python 的全局变量是 ...

  6. 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]: ...

  7. python的常量和变量_python中的常量和变量代码详解

    局部和全局变量: # name='lhf' # def change_name(): # # global name # name='帅了一比' # print('change_name',name) ...

  8. python中的global是什么意思_Python中的global关键字,你了解吗?

    前言 今天来了解下 Python 中的 global 关键字. Python变量的作用域 实战案例演示之前,先要了解下 Python 的作用域. 曾经在闭包的文章 <python小课堂26 - ...

  9. python 获取值类型用于定义变量_Python中的变量和简单数据类型

    变量: 变量是存储在内存中的值,在创建变量时会在内存中开辟一个空间. 变量可以指定不同的数据类型,这些变量可以存储整数,小数或字符串. 基于变量的数据类型,解释器会分配指定内存,并决定什么数据可以被存 ...

最新文章

  1. 【Docker学习笔记(三)】Hello world!
  2. ajax webservice 参数类型,JQuery Ajax WebService传递参数的简单实例
  3. 福利来了!国内TOP3的超级云计算,免费领2000核时计算资源!
  4. 系统制成docker镜像_docker镜像原理 镜像制作 dockerfile
  5. 前端学习(1158):对象结构01
  6. 万字长文丨1分36秒,100亿,支付宝技术双11答卷:没有不可能
  7. bootstrap中分页、面包屑导航、列表组、卡片、下拉菜单、折叠
  8. OracleExcel VBA写获取表字段类型及约束语句
  9. devops失败的原因_如果没有这7个部门的支持,您的DevOps尝试将失败。
  10. leetcode题解102-翻转二叉树
  11. 学习Haskell的一些资料
  12. tourex旅游系统 php,TourEx 旅游电商系统B2C_B2B2C v7.0升级V8.0 旅游源码系统无限制版源码工程源码...
  13. 使用cmd查看电脑显卡的信息
  14. 行为树 --- [4] 简单树
  15. FreeRTOS笔记篇:第四章 -- 队列管理
  16. 计算机综合评价论文,关于模糊综合评价记忆计算机英语论文
  17. 微信小程序之map地图
  18. 【目标检测】使用python代码实现视频转为图片
  19. 用友服务器自动检测,安装用友T3环境检测提示:不可识别的操作系统,怎么办?...
  20. 六元均匀直线阵的各元间距为_微波技术与天线复习题

热门文章

  1. 【Flink】Flink checkpoint was declined
  2. flink 1.9.0 编译:flink-fs-hadoop-shaded 找不到
  3. 06-R环境中的工作空间(workspace)概念
  4. mysql 实验7,MySQL5.7多源复制的实验
  5. Java中含有泛型的 JSON 反序列化问题
  6. 剑指Offer55-II题解-平衡二叉树
  7. Spring框架----Spring的bean的生命周期
  8. golang实现四种排序(快速,冒泡,插入,选择)
  9. MySQL数据库事务及其特性
  10. Django学习(一)---基本配置及创建项目、应用