все Python 3configparserисключение
configparser.DuplicateSectionError
исключения
Исключение: секция с таким именем уже есть — при add_section() или когда она повторяется в одном файле.
Синтаксис
except configparser.DuplicateSectionError as e: e.section, e.source, e.lineno
Строгий режим включён по умолчанию (strict=True), поэтому конфиг, который «работал» в старых версиях со склейкой секций, теперь падает при чтении. strict=False склеивает повторы, и при совпадении ключей побеждает последний. Повтор секции в разных файлах, прочитанных по очереди, ошибкой не считается.
Примеры
import configparser
text = "[a]\nx = 1\n[a]\nx = 2\n"
try:
configparser.ConfigParser().read_string(text)
except configparser.DuplicateSectionError as e:
print(e.section, e.lineno) # → a 3
loose = configparser.ConfigParser(strict=False)
loose.read_string(text)
print(loose["a"]["x"]) # → 2
См. также
Частые ошибки
Открыть в полном глоссарииdocs.python.orgСообщить о неточности