Существует ли версия ConfigParser, которая работает с файлами без заголовков разделов? - PullRequest
1 голос
/ 13 марта 2012

У меня есть файл конфигурации, который в основном используется в сценариях оболочки и поэтому имеет следующий формат:

# Database parameters (MySQL only for now)
DBHOST=localhost
DATABASE=stuff
DBUSER=mypkguser
DBPASS=zbxhsxhg

# Storage locations
STUFFDIR=/var/mypkg/stuff
GIZMODIR=/var/mypkg/gizmo

Теперь мне нужно прочитать его значения из скрипта Python (2.6). Я не хотел бы заново изобретать колесо и анализировать его с помощью descriptor.readlines() и искать знаки равенства и пропускать строки, начинающиеся с «#» и имеющие дело с указанными значениями и бла-бла-бла-скучным. Я попытался использовать ConfigParser, но он не любит файлы, которые не имеют заголовков разделов. У меня есть какие-нибудь варианты или мне придется делать скучную вещь?

Да, кстати, оборачивать скрипт оболочки вокруг скрипта Python не вариант. Он должен работать внутри Apache.

1 Ответ

3 голосов
/ 13 марта 2012

Я не знаю о таком модуле, но как о быстром и грязном взломе - просто добавьте [section] перед файлом-контентом, и вы можете использовать ConfigParser, как и предполагалось!

from io import StringIO

filename = 'ham.egg'
vfile = StringIO(u'[Pseudo-Sectio]\n%s'  % open(filename).read())
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...