Python: Decorando um método de classe que deve ser sobrescrito quando herdado

Digamos que eu tenha alguma classe base:

class Task:
    def run(self):
        #override this!

Agora, quero que os outros subclassifiquem o Task e sobrescrevam o método run ():

class MyTask(Task):
    def run(self):
        #successful override!

No entanto, o problema é que há lógica que deve ocorrer antes e depois do método run () de todas as classes que subclasse Tarefa.

Parece que uma maneira de fazer isso seria definir outro método na classe base que chama o método run (). No entanto, eu queria perguntar, há uma maneira de conseguir isso com decoradores? Qual seria a maneira mais patética de fazer isso?

questionAnswers(1)

yourAnswerToTheQuestion