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

Dönüş tipini yazdır

Arkadaşlarınla üzerinde çalıştığın bir paketi hata ayıklıyorsun. Fonksiyonlarından birinden dönen verilerle ilgili garip bir şey oluyor ama soruna hangi fonksiyonun neden olduğundan bile emin değilsin. Bazen bir fonksiyonun belli bir şeyi döndüreceğini beklerken başka bir şey döndürmesiyle hataların koda sızabildiğini biliyorsun. Örneğin, bir fonksiyonun bir numpy array döndürmesini beklerken bir list döndürürse, beklenmedik davranışlar görebilirsin. Sorunun bundan kaynaklanmadığından emin olmak için, her çağrıda döndürülen değişkenin tipini yazdıracak print_return_type() adlı bir dekoratör yazmaya karar veriyorsun.

Bu egzersiz

Python'da Fonksiyon Yazımı

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

Egzersiz talimatları

  • Yeni dekore edilmiş fonksiyon olacak iç içe bir fonksiyon, wrapper() oluştur.
  • Dekore edilen fonksiyonu çağır.
  • Yeni dekore edilmiş fonksiyonu döndür.

Uygulamalı interaktif egzersiz

Bu örnek kodu tamamlayarak bu egzersizi bitirin.

def print_return_type(func):
  # Define wrapper(), the decorated function
  ____ ____(____, ____):
    # Call the function being decorated
    result = ____(____, ____)
    print('{}() returned type {}'.format(
      func.__name__, type(result)
    ))
    return result
  # Return the decorated function
  return ____
  
@print_return_type
def foo(value):
  return value
  
print(foo(42))
print(foo([1, 2, 3]))
print(foo({'a': 42}))
Kodu Düzenle ve Çalıştır