Python:global的使用
简介:
1、global是Python中的全局变量关键字。
2、全局变量是编程术语中的一种,源自于变量之分。
3、变量分为局部与全局,局部变量又可称之为内部变量。
4、由某对象或某个函数所创建的变量通常都是局部变量,只能被内部引用,而无法被其它对象或函数引用。
5、全局变量既可以是某对象函数创建,也可以是在本程序任何地方创建。全局变量是可以被本程序所有对象或函数引用。
6、global关键字的作用是可以使得一个局部变量为全局变量。
案例1:全局无法使用局部变量。
# -*- coding: utf-8 -*-
def test1():# 局部变量 locallocal_var = "a"print(local_var)# 全局无法使用局部变量,只有对应的局部作用域可用
# print(local_var) # NameError: name 'local_var' is not defined
案例2:全局变量,任意范围均可使用。
global_var = 1def test2():# 函数内使用全局变量print(global_var + 1)def inner():# 嵌套函数内使用全局变量print(global_var + 2)return global_var + 3 # 返回值内使用全局变量# 函数外使用全局变量。
print(global_var)
案例3:函数内定义的局部变量
def test3():# 函数内变量,但对于下级函数就是全局变量,对于外部来说就是局部变量func_var = 1def inner():print(func_var)return func_varreturn inner()test3()
案例4:函数间global关键字的作用
def test4():# global关键字作用global func_varfunc_var = 2# 调用test5可以打印 func_var,去掉global会报错。test5()print(test5.__globals__)def test5():print(func_var)test4()
案例5:不同文件模块中的global,注意test6, test7为不同文件。
# a.py
def test6():# global关键字作用global func_varfunc_var = 3# b.py
from a import test6def test7():print(test6.__globals__["func_var"])# 不先执行test6的情况下会抛出异常。KeyError: 'func_var'
test7() # KeyError: 'func_var'
案例6:不同文件模块中的global,注意test6, test7为不同文件。
# a.py
def test6():# global关键字作用global func_varfunc_var = 4# b.py
from a import test6def test7():print(test6.__globals__["func_var"])# 先执行test6的情况下,test可以使用 func_var
test6()
test7() # 4
结论:
1、只导入包,global定义的全局变量没有被加到globals里面。
2、执行global所在的对应函数,global定义的函数内会存入对应变量,其他函数内则不会存入。
微信公众号:玩转测试开发
欢迎关注,共同进步,谢谢!
Python:global的使用相关推荐
- python global和nonlocal用法解析
这篇文章主要介绍了python global和nonlocal用法解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 global和nonlocal ...
- python global和nonlocal_python global和nonlocal用法解析
python global和nonlocal用法解析 这篇文章主要介绍了python global和nonlocal用法解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值 ...
- python global函数_如何使用python语言中的global关键字获取函数值
在python语言中,如果在函数外层定义了一个全局变量a,函数内部又有一个同名的局部变量,想要这个全局变量的值改成为局部变量的值,可以使用global.下面利用一个实例说明如何实现这个场景,操作如下: ...
- python global用法_14_手把手教你学Python之函数(下)
变量作用域:根据变量定义的位置,可将变量分为全局变量和局部变量. 全局变量:定义在函数外面的变量,可以在多个函数中进行访问,但不能执行赋值操作.如果有赋值语句,相当于创建了一个同名的局部变量: 局部变 ...
- python global将结果存储起来给另外一个文件对象使用
使用场景: 在aaa.py文件里面操作数据生成结果C 然后再在bbb.py文件里面使用C 下面是aaa.py代码: global c# c = 0 def plus():global ca= 1b = ...
- python global和nonlocal_3.关于作用域知识的额外补充global和nonlocal关键字
本遍文章对global关键字和nonlocal关键字进行补充,这两个关键字在以后做python开发的时候,能不用尽量别用!最好别用!总会出现让你意想不到的后果... 1.先说第一种global,不管在 ...
- Python global文件的全局变量使用
全局文件global_par.py #!/usr/bin/env python # -*- coding: utf-8 -*-global config_data 主文件main.py #!/usr/ ...
- python global用法_【干货】每天更新两个Python 小例子(十九)
关注我,给你不一样的Python世界 Python试听课 扫码免费领 这里是G的实例课堂,每天带来两个Python实例. 实例001:变量作用域 题目:学习使用auto定义变量的用法. 程序分析:py ...
- python global 变量_python global全局变量 模块通信问题
原博文 2019-08-12 11:33 − 1 # foo.py 2 a = 3 3 4 5 class Foo(object): 6 # noinspection PyMethodMayBeSta ...
- Python global 语句
如果你想给一个在程序顶层的变量赋值(也就是说它不存在于任何作用域中,无论是函数还是类),那么你必须告诉 Python 这一变量并非局部的,而是全局(Global)的.我们需要通过 global 语句来 ...
最新文章
- java获取jndi密码_用JAVA代码获取Weblogic配置的JNDI 数据源连接
- MQ在计算机组成,[转载]计算机组成框图-计算机运行流程(例子)
- php 表情选择,php imagettftext和特定的表情符号
- npm安装iViewUI框架 - cmd篇
- 廖雪峰介绍Node.js
- java开发入行真功夫pdf_Java开发入行真功夫
- mysql status uptime_MySQL优化(四) 慢查询的定位及优化
- Java虚拟机工作原理具体解释
- javascript一些基础知识
- STM32的备份寄存器和控制状态寄存器
- linux第五单元作业,第五单元《微型计算机系统》教案
- lopatkin俄大神Windows精简版系统安装注意事项及恢复OneDrive
- OSChina 周五乱弹 —— IG wxz 请联系小小编辑付钱删帖
- VMware安装和卸载时出现无法访问你试图使用的功能所在的网络位置该怎么办(Windows Installer CleanUp)
- Zemax学习笔记——序列模式点光源与平行光设置
- 双击打开Excel2016文件后无法直接显示文件内容的解决办法
- “双月”数据集的生成
- android 5.1 随机IMEI号
- 单点登录--微服务的登录解决方案
- html里高度的英文,高度是什么意思
热门文章
- office2019word2019excel2019ppt2019关闭自动更新设置步骤
- linux jq下载文件,linux 之 jq
- nrf uart for android,nRF Toolbox for BLE
- 行车记录仪数据被删除了怎么恢复?解决方法分享
- fatal: unable to access ‘https://github.com/apc.git/‘: Failed to connect to github.comport 443:
- 加拿大主教大学计算机世界排名,加拿大大学计算机专业排名
- android ppt素材,华为ppt素材库
- python进阶之web前端(01—HTML超文本标记语言)
- Python pip distribute
- Work around for SQL Configuration Manager Consol