对Pyhon实现静态变量全局变量的方法详解

yipeiwu_com6年前Python基础

python不能像C++一样直接定义一个static变量或者通过extern来导入别的库的变量而实现数据共享,但是python的思想是通过模块化来解决这个问题,就是通过模块来实现全局变量。

首先新建一个global_var_model .py的文件,也就是存储全局变量的模块

# coding=utf-8
#在别的文件使用方法:
#import global_var_model as gl
#gl.gl_int_i += 4,可以通过访问和修改gl.gl_int_i来实现python的全局变量,或者叫静态变量访问
#gl.gl_int_i
gl_int_i=1 #这里的gl_int_i是最常用的用于标记的全局变量
gl_str_i='one'

这个模块里面可以加入自己的变量variable,好了以后在另一个文件里面实现调用该全局变量:

加入现在在test.py里面调用全局变量

# coding=utf-8
import global_var_model as gl
#可以实现对全局变量的修改

def fun1():
  gl.gl_int_i += 4
  return gl.gl_int_i
a=fun1()
print a
def fun2():
  gl.gl_int_i += 400
  return gl.gl_int_i
b=fun2()
print b

输出结果是5和405

可见实现以模块global_var_model 内的变量以全局变量的功能。

以上这篇对Pyhon实现静态变量全局变量的方法详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Pytorch训练过程出现nan的解决方式

Pytorch训练过程出现nan的解决方式

今天使用shuffleNetV2+,使用自己的数据集,遇到了loss是nan的情况,而且top1精确率出现断崖式上升,这显示是不正常的。 在网上查了下解决方案。我的问题是出在学习率上了...

Python Django框架单元测试之文件上传测试示例

Python Django框架单元测试之文件上传测试示例

本文实例讲述了Python Django框架单元测试之文件上传测试。分享给大家供大家参考,具体如下: Submitting files is a special case. To POS...

python使用循环打印所有三位数水仙花数的实例

首先水仙花数是什么? 水仙花数(Narcissistic number)也被称为超完全数字不变数(pluperfect digital invariant, PPDI)、自恋数、自幂数、...

PyQt4 treewidget 选择改变颜色,并设置可编辑的方法

PyQt4 treewidget 选择改变颜色,并设置可编辑的方法

如下所示: # -*- coding: utf-8 -*- import sys from PySide.QtGui import * from PySide.QtCore impo...

Django框架HttpResponse对象用法实例分析

本文实例讲述了Django框架HttpResponse对象用法。分享给大家供大家参考,具体如下: 1.HttpResponse 可通过HttpResponse构造响应对象: Http...