ConfigParser - это широко обсуждаемый ванильный анализатор конфигурации для Python.
Однако вы можете просто импортировать конфигурацию
, где config.py
содержит код Python, который устанавливает параметры конфигурации.
Каковы плюсы \ минусы этих двух подходов к настройке? Когда следует выбирать каждый?
ИМО это сводится к вопросу личного стиля. Вы хотите, чтобы третьи лица редактировали ваш конфиг? Если это так, то, возможно, имеет смысл иметь более «естественный» стиль конфигурации а-ля ConfigParser
, который не такой технический и который не может быть слишком далеко за пределами вашей целевой аудитории.
Многие популярные проекты, такие как Fabric и Django , используют «родной» стиль конфигурации, который по сути является просто модулем Python. У Фабри есть fabfile.py
, а у Джанго settings.py
.
В целом, вы будете иметь гораздо больше гибкости, используя собственный подход импорта модуля просто потому, что вы можете делать в этом файле все что угодно, включая определение функций, классов и т. Д., Потому что это просто еще один Модуль Python, который вы импортируете.
Эта полнота зависит от ваших потребностей и целей сценария. Один путь действительно не «лучше», просто другой. Подробное обсуждение большинства парсеров конфигурации pythons (включая модули ConfigParser
и config
) см. В: