В ответе Бастьена Леонара упоминается модуль абстрактного базового класса, а в ответе Брендана Абеля рассматриваются нереализованные атрибуты, вызывающие ошибки. Чтобы гарантировать, что класс не реализован за пределами модуля, вы можете добавить префикс базового имени к подчеркиванию, которое обозначает его как частное для модуля (т.е. оно не импортируется).
т.е.
class _Controller(object):
path = '' # There are better ways to declare attributes - see other answers
class MyController(_Controller):
path = '/Home'