Python Glossary English

Python 3.12+typingфункция

typing.override

декораторы и маркеры

Декоратор, помечающий метод как переопределение метода базового класса; средство проверки типов проверит, что такой метод действительно существует у предка (Python 3.12+).

Синтаксис

@typing.override

Во время выполнения это no-op (лишь ставит атрибут __override__) — вся польза на стороне проверяльщика типов. Он ловит классическую ошибку: метод в базовом классе переименовали или удалили, и «переопределение» в наследнике молча стало новым несвязанным методом — без @override об этом никто не предупредит.

Примеры

from typing import override
class Base:
    def f(self): ...
class Sub(Base):
    @override
    def f(self): return 42
print(Sub().f())   # → 42

См. также

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