Python全局变量字global使用的相关问题有哪些
Admin 2022-08-10 群英技术资讯 513 次浏览
2、全局变量是编程术语中的一种,源自于变量之分。
3、变量分为局部与全局,局部变量又可称之为内部变量。
4、由某对象或某个函数所创建的变量通常都是局部变量,只能被内部引用,而无法被其它对象或函数引用。
5、全局变量既可以是某对象函数创建,也可以是在本程序任何地方创建。全局变量是可以被本程序所有对象或函数引用。
6、global关键字的作用是可以使得一个局部变量为全局变量。
# -*- coding: utf-8 -*- def test1(): # 局部变量 local local_var = "a" print(local_var) # 全局无法使用局部变量,只有对应的局部作用域可用 # print(local_var) # NameError: name 'local_var' is not defined
global_var = 1 def test2(): # 函数内使用全局变量 print(global_var + 1) def inner(): # 嵌套函数内使用全局变量 print(global_var + 2) return global_var + 3 # 返回值内使用全局变量 # 函数外使用全局变量。 print(global_var)
def test3(): # 函数内变量,但对于下级函数就是全局变量,对于外部来说就是局部变量 func_var = 1 def inner(): print(func_var) return func_var return inner() test3()
def test4(): # global关键字作用 global func_var func_var = 2 # 调用test5可以打印 func_var,去掉global会报错。 test5() print(test5.__globals__) def test5(): print(func_var) test4()
# a.py def test6(): # global关键字作用 global func_var func_var = 3 # b.py from a import test6 def test7(): print(test6.__globals__["func_var"]) # 不先执行test6的情况下会抛出异常。KeyError: 'func_var' test7() # KeyError: 'func_var'
# a.py def test6(): # global关键字作用 global func_var func_var = 4 # b.py from a import test6 def test7(): print(test6.__globals__["func_var"]) # 先执行test6的情况下,test可以使用 func_var test6() test7() # 4
num = 0 def cc(): global count,num count = count+1 num = num+2 print(count,num) cc() 3 2 # 可以函数中的global声明能够修改全局变量 num Out[24]: 2 # count Out[25]: 3 在使用全局变量的场合,也可用类变量代替 class C: count = 3 def cc(): count = C.count+1 print(count) cc() 4
1、只导入包,global定义的全局变量没有被加到globals里面。
2、执行global所在的对应函数,global定义的函数内会存入对应变量,其他函数内则不会存入。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
断点(break point)是指在代码中指定位置,当程序运行到此位置时便中断下来,并让开发者可查看此时各变量的值。
本篇文章给大家带来了关于Python的相关知识,其中主要介绍了python类对象的析构释放代码演示,文章围绕主题展开详细的内容介绍,下面一起来看一下,希望对大家有帮助。
logging的主要作用提供日志记录的接口和众多处理模块,供用户存储各种格式的日志,帮助调试程序或者记录程序运行过程中的输出信息。logging日志等级logging日志等级分为五个等级,优先级从高到低依次是:**CRITICAL;**程序严重错误**ERROR;**程序错...
Python内置函数-float()函数。float() 函数用于将整数和字符串转换成浮点数。
两种实现形式区别前言PyEMD是经验模态分解 (EMD)及其变体的Python实现,EMD最流行的扩展之一是集成经验模态分解 (EEMD),它利用了噪声辅助执行的集成。顾名思义,这个包
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008