Python'da fonksiyonlara parametre gönderme, fonksiyonun belirli bir görevi yerine getirebilmesi için ona dışarıdan veri sağlamamızı sağlar. Parametreler, fonksiyonun parantezleri içinde tanımlanır ve fonksiyon çağrılırken bu parametrelere değerler gönderilir. Bu değerler fonksiyonun içinde kullanılır.
Temel Yapı
def fonksiyon_adi(parametre1, parametre2, ...):
# Fonksiyonun yaptığı işlemler
return sonuç
Örnek 1: Parametre Alan Basit Bir Fonksiyon
Aşağıdaki örnekte, iki parametre alan bir fonksiyon tanımlayalım ve bu parametreleri toplasın:
def toplama(a, b):
return a + b
Bu fonksiyon iki sayı alır ve bu sayıların toplamını döndürür. Kullanımı şu şekildedir:
sonuc = toplama(3, 5) # 3 ve 5 değerlerini a ve b parametrelerine gönderir
print(sonuc) # Çıktı: 8
Örnek 2: Varsayılan Değerli Parametreler
Fonksiyonun bazı parametrelerine varsayılan değerler atanabilir. Eğer bu parametrelere değer verilmezse varsayılan değer kullanılır.
def mesaj_yaz(isim, mesaj="Merhaba"
):
return f"{mesaj}, {isim}!"
Bu fonksiyonda, mesaj
parametresine varsayılan olarak "Merhaba" değeri verilmiştir. Kullanım örnekleri:
print(mesaj_yaz("Ahmet")) # Çıktı: Merhaba, Ahmet!
print(mesaj_yaz("Ayşe", "Selam")) # Çıktı: Selam, Ayşe!
Örnek 3: Anahtar Kelime Argümanları (Keyword Arguments)
Fonksiyon çağrılırken, parametre isimleri kullanılarak değerler atanabilir. Bu, özellikle parametrelerin sırasını karıştırmak istemediğimizde faydalıdır.
def bilgileri_yaz(isim, yas):
return f"İsim: {isim}, Yaş: {yas}"
Anahtar kelime argümanları kullanarak bu fonksiyonu çağırabiliriz:
print(bilgileri_yaz(isim="Ahmet", yas=30)) # Çıktı: İsim: Ahmet, Yaş: 30
print(bilgileri_yaz(yas=25, isim="Ayşe")) # Çıktı: İsim: Ayşe, Yaş: 25
Örnek 4: Belirsiz Sayıda Parametre Gönderme
Bir fonksiyona kaç tane parametre göndereceğinizi bilmiyorsanız, *args
ya da **kwargs
kullanarak belirsiz sayıda argüman alabilirsiniz.
-
*args
: Fonksiyona birden fazla pozisyonel argüman gönderilmesine izin verir.def sayilari_topla(*args): return sum(args) print(sayilari_topla(1, 2, 3, 4)) # Çıktı: 10
-
**kwargs
: Fonksiyona birden fazla anahtar kelime argümanı gönderilmesine izin verir.def kisi_bilgileri(**kwargs): for anahtar, deger in kwargs.items(): print(f"{anahtar}: {deger}") kisi_bilgileri(isim="Ahmet", yas=30, meslek="Mühendis")
Çıktı:
isim: Ahmet yas: 30 meslek: Mühendis
Özet
- Fonksiyonlara parametreler göndererek dışarıdan veri sağlayabilirsiniz.
- Varsayılan değerler atayarak bazı parametreleri isteğe bağlı hale getirebilirsiniz.
- Anahtar kelime argümanları kullanarak parametrelerin sırasını karıştırmadan değer atayabilirsiniz.
-
*args
ve**kwargs
ile belirsiz sayıda parametre gönderebilirsiniz.