все Python 3configparserисключение
configparser.MissingSectionHeaderError
исключения
Исключение: файл начинается с «ключ = значение» без заголовка [секция]. Подкласс ParsingError.
Синтаксис
except configparser.MissingSectionHeaderError as e: e.lineno, e.line
Так падает чтение .env-подобных и properties-файлов: configparser требует секцию до первого ключа. Старый приём — приписать заголовок самому: read_string('[root]\n' + text). С 3.13 есть allow_unnamed_section=True и ключ configparser.UNNAMED_SECTION.
Примеры
import configparser
text = "debug = yes\nport = 8000\n"
try:
configparser.ConfigParser().read_string(text)
except configparser.MissingSectionHeaderError as e:
print(e.lineno, repr(e.line)) # → 1 'debug = yes\n'
cfg = configparser.ConfigParser()
cfg.read_string("[root]\n" + text)
print(cfg.getint("root", "port")) # → 8000
# Python 3.13+
import configparser
cfg = configparser.ConfigParser(allow_unnamed_section=True)
cfg.read_string("debug = yes\n")
print(cfg.getboolean(configparser.UNNAMED_SECTION, "debug")) # → True
См. также
Частые ошибки
Открыть в полном глоссарииdocs.python.orgСообщить о неточности