Форум программистов, компьютерный форум, киберфорум
Python: Решение задач
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
 Аватар для adamblack
4 / 2 / 2
Регистрация: 19.10.2021
Сообщений: 40

configparser не сохраняет данные на диск

24.11.2021, 03:02. Показов 1322. Ответов 4

Студворк — интернет-сервис помощи студентам
Доброго времени форумчане

Возникла проблема. Не совсем понимаю почему работает через раз, каким-то магическим способом, он то обновляет, то не обновляет файл config.ini

Функция обновления конфига:
Python
1
2
3
4
5
6
7
8
9
10
11
12
class Update:
    def __init__(self, PATH_FILE_CONFIG):
        self.PATH_FILE_CONFIG = PATH_FILE_CONFIG
        self.config = configparser.ConfigParser()
        self.config.read(self.PATH_FILE_CONFIG)
 
    def updateConfig(self, HEAD, PARAM, VALUE):
        self.LOG.handler(f'Update value {HEAD}:{PARAM}:{VALUE}', 'CONFIG')
        self.config[HEAD][PARAM] = VALUE
        
        with open(self.PATH_FILE_CONFIG, 'w') as configfile:
            self.config.write(configfile)
Сам конфиг:
Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
[GLOBAL]
version = 2.0.1.4.0
date_updates = 1637709897
count_backup = 14
build = 2
 
[INFO-LIB]
count_listeners = 0
count_handlers = 1
count_modules = 4
 
[INFO-UPDATES]
count_listeners = 0
count_handlers = 0
count_modules = 0
Лог говорит что все в порядке и обновляю переменные, но файл не записывается. Точнее записывается, но не всегда.
А каким бубном его активировать в не понятках
Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
2021-11-24 02:58:07,166 [SYSTEM:main][UPDATE] : Update in progress ...
2021-11-24 02:58:07,166 [SYSTEM:update][UPDATE] : Update file "config.ini"
2021-11-24 02:58:07,167 [SYSTEM:update][UPDATE] : Generate new version: 3.0.1.6.0
2021-11-24 02:58:07,167 [SYSTEM:update][CONFIG] : Update value GLOBAL:version:3.0.1.6.0
2021-11-24 02:58:07,168 [SYSTEM:update][CONFIG] : Update value GLOBAL:count_backup:4
2021-11-24 02:58:07,169 [SYSTEM:update][CONFIG] : Update value GLOBAL:date_updates:1637711887
2021-11-24 02:58:07,171 [SYSTEM:update][CONFIG] : Get value [GLOBAL]:[build]:2
2021-11-24 02:58:07,171 [SYSTEM:update][CONFIG] : Update value GLOBAL:build:3
2021-11-24 02:58:07,172 [SYSTEM:update][CONFIG] : Update value INFO-LIB:count_listeners:0
2021-11-24 02:58:07,173 [SYSTEM:update][CONFIG] : Update value INFO-LIB:count_handlers:1
2021-11-24 02:58:07,174 [SYSTEM:update][CONFIG] : Update value INFO-LIB:count_modules:6
2021-11-24 02:58:07,175 [SYSTEM:update][CONFIG] : Update value INFO-UPDATES:count_listeners:0
2021-11-24 02:58:07,176 [SYSTEM:update][CONFIG] : Update value INFO-UPDATES:count_handlers:0
2021-11-24 02:58:07,177 [SYSTEM:update][CONFIG] : Update value INFO-UPDATES:count_modules:0
2021-11-24 02:58:07,180 [SYSTEM:main][UPDATE] : Update successful!
Структура проекта примерно такова:
- main.py
-- LIB
----MODULES
------update.py
------call_update.py
--CONFIGURATE
----config.ini

Help
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
24.11.2021, 03:02
Ответы с готовыми решениями:

ofstream.flush() не обновляет файл! (не сохраняет на диск)
ofstream logfile; ... { .. logfile.open("log.txt", ios::out | ios::app); .. } .. { ..

Не сохраняет данные
Всем доброго вечера! Работаю с базой FireBird 2.1, которая лежит на сервере. По моей идеи программой где база используется, можно...

Не сохраняет данные в БД
Добрый день, не могу второй день решить проблему. При попытки добавить новую запись в БД, она появляется в ДатагридФью, но в БД так и не...

4
Автоматизируй это!
Эксперт Python
 Аватар для Welemir1
7391 / 4818 / 1246
Регистрация: 30.03.2015
Сообщений: 13,693
Записей в блоге: 29
24.11.2021, 08:03
adamblack, отладчиком посмотри, что там происходит. Доку конфигпарсера смотрел?

Цитата Сообщение от adamblack Посмотреть сообщение
self.LOG.handler(f
нет такого атрибута в классе

Цитата Сообщение от adamblack Посмотреть сообщение
записывается, но не всегда.
это значит файла нет совсем или он есть, но пустой?
0
 Аватар для adamblack
4 / 2 / 2
Регистрация: 19.10.2021
Сообщений: 40
24.11.2021, 14:25  [ТС]
Цитата Сообщение от Welemir1 Посмотреть сообщение
нет такого атрибута в классе
Это другое, здесь все прекрасно работает

Цитата Сообщение от Welemir1 Посмотреть сообщение
это значит файла нет совсем или он есть, но пустой?
Как может он при одном запуске - записать, при повторном, ничего не меняя - сказать в логах что записывает, но в файле не обновляется?
0
Автоматизируй это!
Эксперт Python
 Аватар для Welemir1
7391 / 4818 / 1246
Регистрация: 30.03.2015
Сообщений: 13,693
Записей в блоге: 29
24.11.2021, 15:24
Лучший ответ Сообщение было отмечено adamblack как решение

Решение

Цитата Сообщение от adamblack Посмотреть сообщение
Это другое, здесь все прекрасно работает
это что-то плохое, ты надеюсь не извне суешьт в класс этот атрибут?

Цитата Сообщение от adamblack Посмотреть сообщение
но в файле не обновляется?
например потому что в конфиг парсере ничего не поменялось, то есть он пишет пустую строку


отладчик в руки, доку по конфигу -до дыр зачитать
0
 Аватар для adamblack
4 / 2 / 2
Регистрация: 19.10.2021
Сообщений: 40
24.11.2021, 15:48  [ТС]
Цитата Сообщение от Welemir1 Посмотреть сообщение
это что-то плохое, ты надеюсь не извне суешьт в класс этот атрибут?
Вот класс


Цитата Сообщение от Welemir1 Посмотреть сообщение
например потому что в конфиг парсере ничего не поменялось, то есть он пишет пустую строку
Ладно, я все равно думаю немного переписать код, так как много ошибок там наделал поведения логики, сделаю полигон)
А если использовать не столь масштабные значения через json, нечего страшного по идеи?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
24.11.2021, 15:48
Помогаю со студенческими работами здесь

не сохраняет данные в БД
Здравствуйте. Сталкнулся с такой проблемой. Внутри тега form находится несколько ячеек. После заполнения все они сохраняются в БД кроме тех...

Неправильно сохраняет данные
Не могу понять в чем проблема. Каждый раз при вводе новых данных, изменяются старые. Вот код: #include <conio.h> #include...

form не сохраняет данные
Здравствуйте уважаемые форумчане ! В django не сохраняются данные после того как в template файле сменил переменную {{ form }} на...

1С Реквизит не сохраняет данные
Я добавил реквизит через форму элемента справочника, но в пользовательском режиме вводишь данные в это поле, сохраняю, потом снова захожу в...

Скрипт не сохраняет данные в бд.
Здравствуйте. Пытаюсь заставить работать скрипт-хостинг картинок. Пока на локалхост. Скрипт называется Wussa. Использую Denwer. Указал путь...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
BOINC: 22 года — и всё ещё работает
Programma_Boinc 12.03.2026
BOINC: 22 года — и всё ещё работает Дэвид Андерсон написал ретроспективу. Кратко: в 2001 году он ушёл из United Devices, где был CTO, и за несколько месяцев написал ядро BOINC — клиент, сервер,. . .
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru