对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字符串格式化输出方法分析

本文实例分析了Python字符串格式化输出方法。分享给大家供大家参考,具体如下: 我们格式化构建字符串可以有3种方法: 1 元组占位符 m = 'python' astr = 'i...

解决python tkinter界面卡死的问题

解决python tkinter界面卡死的问题

如果点击按钮,运行了一个比较耗时的操作,那么界面会卡死。 import tkinter as tk import time def onclick(text, i): tim...

30秒轻松实现TensorFlow物体检测

Google发布了新的TensorFlow物体检测API,包含了预训练模型,一个发布模型的jupyter notebook,一些可用于使用自己数据集对模型进行重新训练的有用脚本。 使用该...

Django框架实现逆向解析url的方法

本文实例讲述了Django框架实现逆向解析url的方法。分享给大家供大家参考,具体如下: Django中提供了一个关于URL的映射的解决方案,你可以做两个方向的使用: ①. 有客户端的浏...

Python 实现取矩阵的部分列,保存为一个新的矩阵方法

首先输入一个矩阵: >>> b=[[1,2,3,4,5,6],[2,2,3,4,5,6],[3,2,3,4,5,6],[4,2,3,4,5,6],[5,2,3,4,...