1. Học hỏi
  2. /
  3. Khoa Học
  4. /
  5. Viết hàm trong Python

Connected

Bài tập

Run_n_times()

Trong bài tập video, tôi đã cho bạn xem một ví dụ về decorator nhận tham số: run_n_times(). Mã cho decorator đó được lặp lại bên dưới để nhắc bạn cách nó hoạt động. Hãy luyện tập các cách khác nhau để áp dụng decorator này cho hàm print_sum(). Sau đó tôi sẽ chỉ cho bạn một trò đùa vui mà bạn có thể chơi với đồng nghiệp.

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

Hướng dẫn 1/3

undefined XP
  • 1

    Thêm decorator run_n_times() vào print_sum() bằng cú pháp decorator để print_sum() chạy 10 lần.

  • 2

    Dùng run_n_times() để tạo một decorator run_five_times() giúp chạy bất kỳ hàm nào 5 lần.

  • 3

    Đây là trò đùa: dùng run_n_times() để chỉnh sửa hàm dựng sẵn print() sao cho nó luôn in 20 lần!