Форум сайта python.su
Сейчас вот таким макаром записываю изменения в файл с настройками, но есть одни досадный момент, при таком подходе из файла удаляются все комментарии, которые находятся над секцией с параметрами.
Можно это поправить?
config= configparser.configparser.ConfigParser()() config.read('./data.conf') config.set('Video','Path',r'C:\itb\itb') with open('./data.conf', 'w') as configfile: config.write(configfile)
Офлайн
http://python.su/forum/post/61220/
Офлайн
mitya_s_vКонечно.
Можно это поправить?
Отредактировано doza_and (Дек. 29, 2014 09:38:30)
Офлайн
Rodegast
config = ConfigParser() # Читаем файл config.readfp(open(path2settings, "r")) def Citaem(): # Читаем dbname из секции DataBase print config.get("DataBase", "dbname") def Pisim(): # Пишим в секцию DataBase config.set("DataBase", "dbname", "baza") # Записываем файл config.write(open(path2settings, "w"))
def write(self, for_record): for key, value in for_record.items(): self.parser.set(self.section, key, value) with open(self.path, 'w') as out: self.parser.write(out)
Отредактировано mitya_s_v (Дек. 29, 2014 10:15:07)
Офлайн
doza_andИнтересный вариант, но conf файлы больше нравятся тем, что они поголовно используются в linux + их в ручную легко редактировать (легко читаются).
Некоторые люди в качестве комментария используют дополнительные поля. Это актуально например в json.
Офлайн
Надо без комментариев работать с файлом, если он может программно писаться.
doza_andНе очень уматно. Где гарантия, что другой человек поймёт, что это не какое-то важное поле?
3 Некоторые люди в качестве комментария используют дополнительные поля.
mitya_s_vНу, и как в linux обстоит дело с комментариями? Обычная перезапись.
но conf файлы больше нравятся тем, что они поголовно используются в linux
Отредактировано py.user.next (Дек. 29, 2014 11:22:42)
Офлайн
mitya_s_vНе могу согласиться. Вот почему:
но conf файлы больше нравятся тем, что они поголовно используются в linux + их
Отредактировано doza_and (Дек. 29, 2014 12:57:01)
Офлайн
doza_andНе, настройки kde хранятся в виде
Там то как раз ini файлы вообще не используются.
секция
список параметров
...
doza_andЭто не только шеллы, есть также и конфигурационные файлы программ типа apache, wget или sudo. В них распознаются только комментарии, похожие на шелловские, но на этом сходства заканчиваются, так как там часто вообще своя семантика.
да в Unix полно конфигурационных файлов. Но это большей частью шелы и изредка conf.
Отредактировано py.user.next (Дек. 29, 2014 16:13:17)
Офлайн
py.user.nextВо во и я о том
Смотри файлы вида *rc.
Офлайн