Python 3.11+tomllibисключение
tomllib.TOMLDecodeError
исключения
Исключение tomllib при некорректном TOML; подкласс ValueError, сообщение указывает строку и столбец.
Синтаксис
except tomllib.TOMLDecodeError as e: ...
Поскольку это ValueError, общий except ValueError его тоже поймает. Атрибуты lineno, colno, pos и msg появились только в Python 3.14; на более старых версиях место ошибки есть лишь в тексте сообщения. Частая причина — строка без кавычек: name = Alice — не строка, а ошибка.
Примеры
import tomllib
try:
tomllib.loads('name = Alice')
except tomllib.TOMLDecodeError as e:
print(e) # → Invalid value (at line 1, column 8)
print(isinstance(e, ValueError)) # → True
# Python 3.14+
import tomllib
try:
tomllib.loads('a = 1\nb = ')
except tomllib.TOMLDecodeError as e:
print(e.lineno, e.colno) # → 2 5
См. также
Частые ошибки
Открыть в полном глоссарииdocs.python.orgСообщить о неточности