如果你想给一个在程序顶层的变量赋值(也就是说它不存在于任何作用域中,无论是函数还是类),那么你必须告诉 Python 这一变量并非局部的,而是全局(Global)的。我们需要通过 global 语句来完成这件事。因为在不使用 global 语句的情况下,不可能为一个定义于函数之外的变量赋值。
你可以使用定义于函数之外的变量的值(假设函数中没有具有相同名字的变量)。然而,这种方式不会受到鼓励而且应该避免,因为它对于Python教程的程序读者来说是含糊不清的,无法弄清楚变量的定义究竟在哪。而通过使用 global 语句便可清楚看出这一变量是在最外边的代码块中定义的。

案例(保存为 function_global.py):

def func():global xprint('x is', x)x = 2print('Changed global x to', x)func()
print('Value of x is', x)

输出:

x is 50
Changed global x to 2
Value of x is 2

它是如何工作的

global 语句用以声明 x 是一个python全局变量——因此,当我们在函数中为 x 进行赋值时,这一改动将影响到我们在主代码块中使用的 x 的值。

你可以在同一句 global 语句中指定不止一个的全局变量,例如 global x, y, z。

Python global 语句相关推荐

  1. Python的global语句

    http://www.cnblogs.com/cython/articles/2202287.html 如果你想要为一个定义在函数外的变量赋值,那么你就得告诉Python这个变量名不是局部的,而是 全 ...

  2. global语句(python学习手册422页)

    # -*- coding: cp936 -*- #python 27 #xiaodeng #global语句(python学习手册422页)#实际上就是一个名为__builtin__的模块,但是必须要 ...

  3. python输入语句-python输入语句

    广告关闭 2017年12月,云+社区对外发布,从最开始的技术博客到现在拥有多个社区产品.未来,我们一起乘风破浪,创造无限可能. python条件语句目录:1. 分支语句(if...else...)2. ...

  4. python基础常用语句-Python基本语句

    在学习W3Cschool python高级教程之前,大家接触过许多python语句,在本文中我们将Python一些基本的常用语句做了汇总,并简单介绍下这些python常用语句的用途和标准格式,放在一起 ...

  5. python语句解释_深入理解python with 语句

    深入理解python with 语句 python中with 语句作为try/finally 编码范式的一种替代, 适用于对资源进行访问的场合,确保不管使用过程中是否发生异常都会执行必要的" ...

  6. python choose语句作用_理解闭包是如何与变量作用域相互影响的

    原文标题:KNOW HOW CLOSURES INTERACT WITH VARIABLE SCOPE 比如说你现在想要对一组数字进行排序,同时希望提高一组数字的优先级使这组数字优先显示.这种模式在展 ...

  7. Python简单语句

    Python简单语句 Python语句由关键字.标识符.表达式组成.语句的根本作用就是执行某些修改操作,让代码发挥作用去做某些事. 语句从执行结构上来分有顺序.条件.循环结构,这3种结构可以实现任何算 ...

  8. python global和nonlocal_python global和nonlocal用法解析

    python global和nonlocal用法解析 这篇文章主要介绍了python global和nonlocal用法解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值 ...

  9. python的语句_Python的简单语句

    Python的简单语句包括: 1.表达式语句:主要用于交互式计算一个表达式的值,或用于过程的调用. 2.赋值语句:用于将名称绑定到值,或者修改对象的属性. 3.扩展的赋值语句:将二元运算符和赋值语句结 ...

最新文章

  1. 《强化学习周刊》第25期:DeepMind提出无模型风险敏感强化学习、谷歌发布 RLDS数据集生态系统...
  2. Vs2015 mysql ef_VS2015 +EF6 连接MYSQL数据库生成实体
  3. C++三五法则,看看你能不能理解(推荐)
  4. Android SDK目录结构介绍
  5. 计算机组成原理课程设计a,计算机组成原理课程设计报告.doc
  6. 并发模式:生产者和消费者
  7. P2619 [国家集训队2]Tree I
  8. tb计算机存储单位_如何节省数TB的云存储
  9. Python3 —— 变量和简单数据类型
  10. to_number用法示例_Number()函数以及JavaScript中的示例
  11. bzoj4806 炮
  12. 《Arduino开发实战指南:机器人卷》一2.4 时间函数
  13. 【BZOJ1179】[Apio2009]Atm/抢掠计划
  14. python处理excel表格-Python读写Excel表格(简单实用)
  15. 视频压缩工具FFmpeg的使用(中)
  16. tcpClient的使用
  17. 杨华杰 清华大学计算机,软件工程课程设计机票预订系统【参考】.doc
  18. php mtrand 范围,PHP mt_rand()函数
  19. stm32: 串口空闲中断的实现(HAL库)
  20. Lanczos方法计算严格对角化格林函数

热门文章

  1. 乌班图 修改ip_Ubuntu临时和永久修改ip地址掩码和网关
  2. keil5函数 默认返回值_Excel等级判定,除了If函数外,还有5个易学易用易懂的技巧需要掌握!...
  3. 加密芯片在汽车无钥匙启动行业的应用
  4. VB编PiView4注册机
  5. 年总结(三):风雨征程一年机房路
  6. 前苹果员工创办激光雷达公司,获4500万美元融资,曾参与苹果机密项目
  7. 昔日网瘾少年,现在用AI教你打守望先锋
  8. 机器翻译简史:八十多年来,人类就是要再造一座通天塔
  9. 用AI算法分析光影看到盲点:这项MIT新研究偷学到二娃技能
  10. 逻辑代码题:五个学生参加计算机比赛