python通过配置文件共享全局变量

  • 2019 年 11 月 23 日
  • 笔记

在使用Python编写的应用的过程中,有时会遇到多个文件之间传递同一个全局变量的情况,此时通过配置文件定义全局变量是一个比较好的选择。

首先配置config.py模块,config需要设置get_xxx和set_xxx的方法提供对外的接口

Python

class global_var: '''需要定义全局变量的放在这里,最好定义一个初始值''' name = 'my_name' # 对于每个全局变量,都需要定义get_value和set_value接口 def set_name(name): global_var.name = name def get_name(): return global_var.name

123456789

class global_var:    '''需要定义全局变量的放在这里,最好定义一个初始值'''    name = 'my_name' # 对于每个全局变量,都需要定义get_value和set_value接口def set_name(name):    global_var.name = namedef get_name():    return global_var.name

Python

import config # 引用全局变量 name = config.get_name() # 修改全局变量 config.set_name('new_name') # 查看修改后的全局变量 print(config.get_name())

1234567

import config# 引用全局变量name = config.get_name()# 修改全局变量config.set_name('new_name')# 查看修改后的全局变量print(config.get_name())

上诉学习自:http://blog.csdn.net/suzyu12345/article/details/51534015

实践一下:

建立三个文件,分别是

main.py

Python

import config import time from change import change_name for i in range(100): name = config.get_name() print(name) config.set_name('new_name') print(config.get_name()) time.sleep(1) change_name()

1234567891011

import configimport timefrom change import change_name for i in range(100):    name = config.get_name()    print(name)    config.set_name('new_name')    print(config.get_name())    time.sleep(1)    change_name()

config.py

Python

class global_var: name = 'my_name' def set_name(name): global_var.name = name def get_name(): return global_var.name

1234567

class global_var:    name = 'my_name' def set_name(name):    global_var.name = namedef get_name():    return global_var.name

change.py

Python

import config def change_name(): config.set_name('new_name1111') print(config.get_name())

12345

import config def change_name():    config.set_name('new_name1111')    print(config.get_name())

然后执行main.py,结果如下,出现两次new_name1111 说明在多个文件之间已经共享了name这个变量。

Python

new_name new_name1111 new_name1111 new_name new_name1111 new_name1111 new_name

1234567

new_namenew_name1111new_name1111new_namenew_name1111new_name1111new_name

原创文章,转载请注明: 转载自URl-team

本文链接地址: python通过配置文件共享全局变量