说说 Python 的 global 标识对变量作用域的影响
发布日期:2021-06-29 21:14:28
浏览次数:2
分类:技术文章
本文共 768 字,大约阅读时间需要 2 分钟。
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 的定义赋值语句,所以被认为是局部变量。所以在定义之前,先访问这个局部变量就会抛错。
转载地址:https://deniro.blog.csdn.net/article/details/99206706 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
网站不错 人气很旺了 加油
[***.192.178.218]2024年04月19日 10时56分19秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
创建和读写文件的一些简单方法
2019-04-30
XmlDocument操作xml文档
2019-04-30
.Net那点事儿系列:C#操作Xml:通过XmlDocument读写Xml文档
2019-04-30
使用XmlDocument创建XML文档及增加删除更新节点
2019-04-30
XML: 使用XmlDocument 与 XmlReader 类
2019-04-30
NET ListView选中行的定位显示
2019-04-30
C#设置窗体最大化 最小化 顶端显示
2019-04-30
C#窗体的最大化/最小化/还原/最小化到托盘/NotifyIcon的代码实现
2019-04-30
如何使程序最小化时出现在系统托盘中(C#)
2019-04-30
WinForm中实现最小化到系统托盘
2019-04-30
C# WinForm窗口最小化到系统托盘 右键操作菜单
2021-07-03
c# form窗体属性讲解
2021-07-03
读书笔记之Windows窗体
2021-07-03
Point,Size,Rectangle结构
2021-07-03
C# 基本结构
2021-07-03
C#语言 图形界面编程(四) 尺寸、坐标、边界
2021-07-03
c# object sender,EventArgs e的一些讲解
2021-07-03
关于C#事件处理函数中的参数(object sender, EventArgs e)
2021-07-03