1. Обучение
  2. /
  3. Курса
  4. /
  5. Написание функций на Python

Connected

упражнение

Run_n_times()

В видеоуроке я показал вам пример декоратора, принимающего аргумент: run_n_times(). Код этого декоратора приведён ниже — чтобы вы могли освежить в памяти, как он работает. Попрактикуйтесь в разных способах применения декоратора к функции print_sum(). А затем я покажу вам забавный трюк, который можно разыграть на коллегах.

def run_n_times(n):
  """Define and return a decorator"""
  def decorator(func):
    def wrapper(*args, **kwargs):
      for i in range(n):
        func(*args, **kwargs)
    return wrapper
  return decorator

Инструкции 1/3

undefined XP
  • 1

    Примените декоратор run_n_times() к функции print_sum() с помощью синтаксиса декоратора так, чтобы print_sum() выполнялась 10 раз.

  • 2

    Используйте run_n_times(), чтобы создать декоратор run_five_times(), который будет запускать любую функцию пять раз.

  • 3

    Вот и сам трюк: используйте run_n_times(), чтобы изменить встроенную функцию print() так, чтобы она всегда печатала текст 20 раз!