Python Glossary English

все Python 3configparserисключение

configparser.InterpolationError

исключения

Базовое исключение ошибок подстановки %(имя)s и ${секция:ключ}: синтаксиса, отсутствующей ссылки и слишком глубокой цепочки.

Синтаксис

except configparser.InterpolationError as e: e.section, e.option

Важно, когда оно возникает: подстановка ленивая, поэтому битый конфиг спокойно читается и падает только при get() нужного ключа — иногда далеко от места загрузки. Чтобы проверить конфиг сразу, пройдите по всем ключам после чтения. raw=True и interpolation=None обходят подстановку целиком.

Примеры

import configparser
cfg = configparser.ConfigParser()
cfg.read_string("[a]\nok = 1\nbad = %(nope)s\nrate = 5%\n")
for key in cfg["a"]:
    try:
        cfg.get("a", key)
    except configparser.InterpolationError as e:
        print(key, type(e).__name__)  # → bad InterpolationMissingOptionError / rate InterpolationSyntaxError

См. также

Частые ошибки

Открыть в полном глоссарииdocs.python.orgСообщить о неточности