对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调度框架APScheduler使用

最近在研究python调度框架APScheduler使用的路上,那么今天也算个学习笔记吧! # coding=utf-8 """ Demonstrates how to use t...

Python序列之list和tuple常用方法以及注意事项

sequence 序列 sequence(序列)是一组有顺序的对象的集合。序列可以包含一个或多个元素,也可以没有任何元素。 我们之前所说的基本数据类型,都可以作为序列的对象。对象还可以是...

Django实现分页显示效果

Django中提供了一个类Paginator专门用来管理和处理分页数据,所以我们在使用之前先导入好相应的类,,另外这里我们也导入了待会会用到的处理异常的两个类 EmptyPage和Pag...

Python调用C语言开发的共享库方法实例

在helloworld工程中,编写了一个简单的两个数值相加的程序,编译成为共享库后,如何使用python对其进行调用呢? 使用ll命令列出当前目录下的共享库,其中共享库名为libhell...

Python中的pass语句使用方法讲解

 Python pass语句使用当语句要求不希望任何命令或代码来执行。 pass语句是一个空(null)操作;在执行时没有任何反应。pass也是代码最终会是有用的,但暂时不用写...