BaşlayınÜcretsiz Başlayın

Bir dekoratör tanımlamak

Bir arkadaşın, dekore edilen fonksiyon çağrılmadan önce bir "before" mesajı ve çağrıldıktan sonra bir "after" mesajı yazdıran bir dekoratör üzerinde çalışıyor. Ancak, dekore edilen fonksiyonun nasıl sarmalanacağını hatırlamakta zorlanıyor. print_before_and_after() dekoratörünü tamamlayarak ona yardım et.

Bu egzersiz

Python'da Fonksiyon Yazımı

kursunun bir parçasıdır
Kursu Görüntüle

Egzersiz talimatları

  • Dekore edilen fonksiyonu çağır ve konumsal argümanları *args olarak geçir.
  • Yeni, dekore edilmiş fonksiyonu döndür.

Uygulamalı interaktif egzersiz

Bu örnek kodu tamamlayarak bu egzersizi bitirin.

def print_before_and_after(func):
  def wrapper(*args):
    print('Before {}'.format(func.__name__))
    # Call the function being decorated with *args
    ____(*args)
    print('After {}'.format(func.__name__))
  # Return the nested function
  return ____

@print_before_and_after
def multiply(a, b):
  print(a * b)

multiply(5, 10)
Kodu Düzenle ve Çalıştır