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

yipeiwu_com5年前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设计】。

相关文章

解决python nohup linux 后台运行输出的问题

遇到问题 nohup python flush.py & 这样运行,生成了nohup.out文件,但是内容始终是空的,试了半天也不行。浪费了不少时间。 原因 python的输出又缓...

python学习笔记--将python源文件打包成exe文件(pyinstaller)

pyinstaller 库的使用 PyInstaller是一个十分有用的第三方库,它能够在Windows、Linux、Mac OS X 等操作系统下将 Python 源文件打包,通过对源...

tensorflow 用矩阵运算替换for循环 用tf.tile而不写for的方法

如下所示: # u [32,30,200] # u_logits [400,32,30] q_j_400 = [] for j in range(400): q_j_400.ap...

python取代netcat过程分析

首先解释几个概念: TCP:TCP是因特网中的传输层协议,使用三次握手协议建立连接。 IP:Internet Protocol协议的英文名直译就是:因特网协议。 UDP:和TCP一...

python实现微信小程序用户登录、模板推送

Python 实现微信小程序的用户登录 小程序可以通过官方提供的登录邓丽来获取用户身份的标示, 具体文档可以参考 官方文档, 通过流程时序可以看到, 对于需要和前端配合的服务端开发, 主...