Python'da Geri Çağırım Fonksiyonları
Python'da fonksiyonları diğer fonksiyonların parametreleri olarak aktarma imkanı vardır. Bu durumda fonksiyonlar değişkenler gibi (parantezler olmadan) aktarılır ve geri çağırımlar olarak adlandırılır. Bu geri çağırım fonksiyonları, ana fonksiyonun gövdesi içinde çalıştırılacaktır.
Bir sayı ve bir fonksiyonu parametre olarak alan test adında bir fonksiyonumuz olduğunu varsayalım:
def test(num, func):
pass
Şimdi bir sayının karesini alacak func adında bir fonksiyon oluşturalım:
def func(num):
return num ** 2
Şimdi test fonksiyonuna dönelim ve gövdesine, parametre olarak aktarılan geri çağırım fonksiyonunun da bir sayıyı parametre olarak alacağı kodu ekleyelim. Sonuçta, test fonksiyonunun sonucu, kendisi için sayının test fonksiyonunun ilk parametresinden alınacağı başka bir fonksiyonun çalışması olacaktır:
def test(num, func):
print(func(num))
Daha sonra test fonksiyonunu çağırıyoruz ve ilk parametre olarak 3, ikinci parametre olarak da func aktarıyoruz:
test(3, func) # 9 yazdıracak
Aşağıdaki kodun çalıştırılmasının sonucu ne olacak:
def get_Info(txt, func):
print(func(txt))
def func(name):
return 'user name is ' + name
get_Info('john', func)