НачатьНачать бесплатно

Счётчик

Вы работаете над новым веб-приложением и хотите узнать, сколько раз вызывается каждая из его функций. Для этого вы решаете написать декоратор, который добавляет счётчик к каждой декорируемой функции. В дальнейшем эта информация поможет вам определить, какие участки кода можно удалить, поскольку приложение их больше не использует.

Это упражнение является частью курса

Написание функций на Python

Посмотреть курс

Инструкции к упражнению

  • Вызовите декорируемую функцию и верните результат.
  • Верните новую декорированную функцию.
  • Примените декоратор counter() к функции foo().

Интерактивное практическое упражнение

Попробуйте выполнить это упражнение, дополнив этот пример кода.

def counter(func):
  def wrapper(*args, **kwargs):
    wrapper.count += 1
    # Call the function being decorated and return the result
    return ____
  # Set count to 0 to initialize call count for each new decorated function
  wrapper.count = 0
  # Return the new decorated function
  ____

# Decorate foo() with the counter() decorator
____
def foo():
  print('calling foo()')
  
foo()
foo()

print('foo() was called {} times.'.format(foo.count))
Редактировать и запускать код