Python. Теряются изменения в разных модулях, использующих один тот же ini файл
Всем привет. Для "глобальных" переменных использую сторонний модуль GlobVarsIni. Столкнулся вот с чем :
- main.py: подключаю модуль, присваиваю значение "глобальной" переменной А, вывожу на экран (0), вызываю функцию из файла second.py.
- second.py:подключаю модуль, читаю значение А, вывожу на экран (старое =1). Повторно запускаю, уже оба вывода = 0. Снова меняю А = 1, при первом запуске main.py "1 0", при повторном = "1 1". При повторном запуске значения всегда одинаковы. Такое ощущение что в second.py производится чтение Ini-файла при запуске main.py...
код
class GlobVarsIni:
config = ''
file_ini = '/home/user/src/modules/GlobVars/configs.ini'
def __init__(self):
import configparser
self.config = configparser.SafeConfigParser()
s = open(self.file_ini, 'r+')
self.config.read_file(s)
s.close()
def getValue(self,section='def',param='err'):
res = self.config.get(section, param)
return (res)
def createValue(self,section='def',param='tt',newValue=''):
self.config[section][param] = newValue
self.saveFile()
return True
def saveFile(self):
with open(self.file_ini, "w") as f:
self.config.write(f)
return True
main.py
import Second
import src.modules.GlobVars.GlobVarsIni as gb
globval = gb.GlobVarsIni()
a = 1
globval.createValue('runtime','autoarch',a)
print(globval.getValue('runtime','autoarch') # новое значение
Second.start()
second.py
import src.modules.GlobVars.GlobVarsIni as gb
globval = gb.GlobVarsIni()
class Second():
def start():
print(globval.getValue('runtime','autoarch') # старое значение