все Python 3Исключенияисключение
SyntaxWarning
встроенные исключения
Сомнительный синтаксис (напр. подозрительное сравнение).
Синтаксис
raise SyntaxWarning
Это предупреждение, а не ошибка: компилятор печатает его один раз и продолжает работу, так что до except дело обычно не доходит. Чаще всего студент ловит его на сравнении is с литералом (нужно ==) и на нераспознанной escape-последовательности в обычной строке — с Python 3.12 такая строка даёт именно SyntaxWarning, лечится r-префиксом. Чтобы такие места падали, а не проскакивали, запускайте с ключом -W error::SyntaxWarning.
Примеры
try:
raise SyntaxWarning
except SyntaxWarning as e:
print(type(e).__name__) # → SyntaxWarning
См. также
Открыть в полном глоссарииdocs.python.orgСообщить о неточности