Sayaç
Yeni bir web uygulaması üzerinde çalışıyorsun ve içindeki her bir fonksiyonun kaç kez çağrıldığını merak ediyorsun. Bu yüzden, süslediğin her fonksiyona bir sayaç ekleyen bir dekoratör yazmaya karar verdin. Bu bilgiyi ileride, uygulama tarafından artık kullanılmayan kod bölümleri olup olmadığını belirlemek ve gerekirse kaldırmak için kullanabilirsin.
Bu egzersiz
Python'da Fonksiyon Yazımı
kursunun bir parçasıdırEgzersiz talimatları
- Süslenen fonksiyonu çağır ve sonucunu döndür.
- Yeni süslenmiş fonksiyonu döndür.
foo()fonksiyonunucounter()dekoratörüyle süsle.
Uygulamalı interaktif egzersiz
Bu örnek kodu tamamlayarak bu egzersizi bitirin.
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))