все Python 3configparserпонятие
configparser.ConfigParser
парсеры
Парсер INI-файлов: секции [имя], пары «ключ = значение» и подстановки %(имя)s. Основной класс модуля для чтения и записи конфигов.
Синтаксис
parser = configparser.ConfigParser(defaults=None, *, interpolation=BasicInterpolation(), strict=True, allow_no_value=False)
Все значения хранятся и отдаются строками: '5432' + 1 — это TypeError, число дают getint(), getfloat() и getboolean() (последний понимает yes/no, on/off, true/false, 1/0). Ключи приводятся к нижнему регистру (optionxform), а имена секций — нет. Ключи из [DEFAULT] видны в каждой секции и попадают в её перебор. read() молча пропускает несуществующие файлы и лишь возвращает список прочитанных — проверяйте его.
Примеры
import configparser
cfg = configparser.ConfigParser()
cfg.read_string("[DEFAULT]\nDebug = yes\n[db]\nPort = 5432\n")
print(repr(cfg["db"]["port"])) # → '5432' — строка, а не число
print(cfg.getint("db", "port") + 1) # → 5433
print(cfg.getboolean("db", "debug")) # → True — ключ пришёл из DEFAULT
print(list(cfg["db"])) # → ['port', 'debug'] — ключи в нижнем регистре
import configparser
cfg = configparser.ConfigParser()
print(cfg.read(["missing.ini"])) # → [] — файла нет, но ошибки тоже нет
print(cfg.sections()) # → []
См. также
Частые ошибки
Открыть в полном глоссарииdocs.python.orgСообщить о неточности