Fonksiyonları dekore ederken docstring’leri koruma
Bir arkadaşın bir sorunla sana geldi. Bazı hoş dekoratörler yazmış ve üzerinde çalıştığı açık kaynak kütüphanedeki fonksiyonlara eklemiş. Ancak testleri çalıştırırken, dekore edilmiş fonksiyonlardan tüm docstring’lerin gizemli bir şekilde kaybolduğunu fark etmiş. Dekoratör yazarken docstring’leri ve diğer metaveriyi nasıl koruyacağını arkadaşına göster.
Bu egzersiz
Python'da Fonksiyon Yazımı
kursunun bir parçasıdırUygulamalı interaktif egzersiz
Bu örnek kodu tamamlayarak bu egzersizi bitirin.
def add_hello(func):
def wrapper(*args, **kwargs):
print('Hello')
return func(*args, **kwargs)
return wrapper
# Decorate print_sum() with the add_hello() decorator
____
def print_sum(a, b):
"""Adds two numbers and prints the sum"""
print(a + b)
print_sum(10, 20)
# Define the docstring
print_sum_docstring = print_sum.____
print(print_sum_docstring)