Декоратор для отслеживания вызова метода
Условие задачи
Реализовать декоратор @trace, который при вызове любого метода класса Person выводит строку вида:
Entering function <имя_метода> Пример использования:
- при вызове speak() должно напечататься: Entering function speak
- при вызове walk() — Entering function walk
pythonclass Person:
def __init__(self, name):
self.name = name
self.distance = 0
@trace
def speak(self, sentence):
print(f'{self.name}: "{sentence}"')
@trace
def walk(self, distance):
self.distance += distance
print(f'{self.name}: total distance is {self.distance} meters')