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ırEgzersiz talimatları
- Dekore edilen fonksiyonu çağır ve konumsal argümanları
*argsolarak 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)