对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中的VGG实现修改最后一层FC

https://discuss.pytorch.org/t/how-to-modify-the-final-fc-layer-based-on-the-torch-model/766/1...

Python实现控制台输入密码的方法

本文实例讲述了Python实现控制台输入密码的方法。分享给大家供大家参考。具体如下: 1. raw_input() : pwd = raw_input('password: ') p...

python中aioysql(异步操作MySQL)的方法

python异步IO初探 探索异步IO执之前,先说说IO的种类 1.阻塞IO最简单,即读写数据时,需要等待操作完成,才能继续执行。进阶的做法就是用多线程来处理需要IO的部分,缺点是开销会...

使用Python批量修改文件名的代码实例

使用Python批量修改文件名的代码实例

这两天在整理一些文章,但是文件夹中每个文章没有序号会看起来很乱,所以想着能不能用Python写一个小脚本。 于是乎,参考了多方资料,简单写了下面几行代码 import osdef...

Python callable()函数用法实例分析

本文实例讲述了Python callable()函数用法。分享给大家供大家参考,具体如下: python中的内建函数callable( ) ,可以检查一个对象是否是可调用的 。 对于函数...