Python之全局变量篇
2013-05-05 15:18
148 查看
python里面全局变量有两种灵活的用法:
1 声明法
在文件开头声明全局变量
在具体函数中使用该变量时,需要事先声明 global variable,否则系统将该变量视为局部变量。
CONSTANT = 0 #定义了一个全局变量,最好将全局变量大写
def modifyConstant() :
global CONSTANT
#在方法体中要使用全局变量,要先进行声明
print ‘CONSTANT_1=%d’ %CONSTANT
CONSTANT += 1
return
if __name__ == '__main__' :
modifyConstant()
print ‘CONSTANT_2=%d’ %CONSTANT
输出结果:
CONSTANT_1=0
CONSTANT_2=1
2模块法(推荐)
把全局变量定义在一个单独的模块中:
#gl.py
gl_1 = 'hello'
gl_2 = 'world'
在其它模块中使用
#a.py
import gl
def hello_world()
print gl.gl_1, gl.gl_2
#b.py
import gl
def fun1()
gl.gl_1 = 'Hello'
gl.gl_2 = 'World'
第二种方法,适用于不同文件之间的变量共享,而且一定程度上避免了开头所说的全局变量的弊端,推荐!
1 声明法
在文件开头声明全局变量
在具体函数中使用该变量时,需要事先声明 global variable,否则系统将该变量视为局部变量。
CONSTANT = 0 #定义了一个全局变量,最好将全局变量大写
def modifyConstant() :
global CONSTANT
#在方法体中要使用全局变量,要先进行声明
print ‘CONSTANT_1=%d’ %CONSTANT
CONSTANT += 1
return
if __name__ == '__main__' :
modifyConstant()
print ‘CONSTANT_2=%d’ %CONSTANT
输出结果:
CONSTANT_1=0
CONSTANT_2=1
2模块法(推荐)
把全局变量定义在一个单独的模块中:
#gl.py
gl_1 = 'hello'
gl_2 = 'world'
在其它模块中使用
#a.py
import gl
def hello_world()
print gl.gl_1, gl.gl_2
#b.py
import gl
def fun1()
gl.gl_1 = 'Hello'
gl.gl_2 = 'World'
第二种方法,适用于不同文件之间的变量共享,而且一定程度上避免了开头所说的全局变量的弊端,推荐!
相关文章推荐
- python全局变量的使用错误
- python 全局变量规则
- python大盘点:全局变量、局部变量、类变量、实例变量
- 转 python全局变量
- python的全局变量(属性的用法),私有属性,计算对象引用数
- Python中的全局变量
- 零基础学python-16.5 模块间全局变量的修改以及其他访问全局变量的方法
- Python7--局部变量、全局变量、缺省参数、不定长参数、递归
- Python中全局变量和局部变量的差异性说明
- Python全局变量与局部变量的区别
- python中全局变量
- python中全局变量、局部变量、类变量、实例变量简析
- Python全局变量和局部变量
- Python3学习笔记4-函数,全局变量&局部变量,内置函数
- python中list作为全局变量无需global声明的原因
- Python3.5——局部变量与全局变量作用域
- Python实现跨文件全局变量的方法
- python里面的全局变量和局部变量的区别(很好的一篇文章,找不到出处,原作者看到请联系,我会署上名字)
- python返回值与局部全局变量