Fonksiyonlar

Python Python - Ders Notları Yazılım
def fnkTest():          # fonksiyon tanımlama
    print("Merhaba")

fnkTest()               # fonksiyon çağırma

for i in range(10):     
    fnkTest()           # for içinde fonksiyon çağırma. for her döndüğünde fnkTest() fonksiyonunu çağıracaktır.

Örnek 1 – Toplama İşlemi :

a = 10
b = 15
def fnkToplama():
    print(a+b)
fnkToplama()

Fonksiyonlarda değer döndürme – return kodu

a = 10
b = 15
def fnkCarpma():
    return a*b         # a ve değişkenlerini çarpar ve fonksiyonun çağırıldığı yere sonucu gönderir.

sonuc = fnkCarpma()    # değer döndüren fonksiyonları bir değişkene eşitleyebiliriz.
print(sonuc)

Örnek 2 – Yaş Hesaplama :

dogumYili = int(input("Doğum yılınızı giriniz: "))

def fnkYasHesapla():
    import datetime     # Güncel tarihi ve saati elde etmek için kullanılan kütüphane.
    return datetime.datetime.now().year - dogumYili

yas = fnkYasHesapla()
print(yas)

Fonksiyonlara parametre gönderme

def fnkBolme(a,b):           # Fonksiyona gönderilen parametreler a ve b değişkenlerine atanır.
    return a/b

bolme = fnkBolme(20,10)      # Fonksiyonun çağırıldığı yerde fonksiyona parametre olarak 20 ve 10 sayılarını gönderiyoruz.
print(bolme)

Fonksiyonlara gönderilen parametrelerde varsayılan değer

def fnkSelamlama(isim,mesaj = "Hoşgeldin"): # fnkSelamlama fonksiyonu iki parametre almaktadır.
    return f"{mesaj} {isim}"

print(fnkSelamlama("Ercüment"))             # fonksiyona ikinci parametre gönderilmediğinde, mesaj değişkenine "Hoşgeldin" değeri atanır.

print(fnkSelamlama("Ercüment","Günaydın"))  # fonksiyona ikinci parametre gönderilirse gönderilen değer mesaj değişkenine atanır.

Örnek 3 – Dairenin Alanını Hesaplama :

Aşağıda fnkDaireninAlani() fonksiyonunda pi değişkeninin değeri 3 olarak atanmış. Fonksiyon çağırıldığında ikinci parametre gönderilmezse pi değeri 3 alınır. Eğer ikinci parametre gönderilirse pi değişkenine gönderilen değer atanır.

def fnkDaireninAlani(r,pi = 3):
    return r*r*pi

yaricap =  int(input("Dairenin yarıçapını giriniz: "))

print(fnkDaireninAlani(yaricap))           # İkinci parametre gönderilmediği için yukarıda pi değeri 3 alınır.

print(fnkDaireninAlani(yaricap,3.14))      # İkinci parametre gönderildiği için yukarıda pi değeri 3.14 alınır.

Fonksiyonlarda keywords arguments

def fnkIsimSoyisim(isim,soyisim):
    return f"{isim} {soyisim}"

isimSoyisim = fnkIsimSoyisim("Ercüment","Şenlik")   
# Gönderilen parametrelerin sırası fonksiyona gönderildiği sıra ile isim ve soyisim değişkenine atanır.

print(isimSoyisim)

isimSoyisim = fnkIsimSoyisim(soyisim = "Şenlik",isim="Ercüment") 
# Gönderilen parametrelerin sırasını değişken isimlerini belirterek değiştirebiliriz.

print(isimSoyisim)

Fonksiyonlarda değişken sayıda parametre gönderme – *args (Non-Keyword Arguments)

def fnkHesaplama(*args):
    print(type(args))   # Gönderilen parametrelerin hangi veri tipinde alınğını ekrana yazar. Alınan veriler tuple liste olarak alınır.
    print(args)         # Gönderilen parametreleri ekrana yazar.
    topla = 0
    for i in args:      # Gönderilen parametreleri for döngüsü içinde topluyor.
        topla = topla + i
    return topla        # Toplama sonucu fonksiyonun çağrıldığı yere gönderir.

sonuc = fnkHesaplama(10,15)         # Fonksiyonu çağırır ve iki parametre gönderir.
print(sonuc)
sonuc = fnkHesaplama(10,15,25)      # Fonksiyonu çağırır ve üç parametre gönderir.
print(sonuc)
sonuc = fnkHesaplama(10,15,25,35)   # Fonksiyonu çağırır ve dört parametre gönderir.
print(sonuc)

Fonksiyonlarda değişken sayıda parametre gönderme – **kwargs (Keyword Arguments)

def fnkLogin(**kwargs):
    print(type(kwargs))   # Gönderilen parametrelerin hangi veri tipinde alınğını ekrana yazar. Alınan veriler dict liste olarak alınır.
    print(kwargs)         # Gönderilen parametreleri ekrana yazar.
    for key,value in kwargs.items():
        print(key,value)

fnkLogin(kullaniciAdi = "admin")                # Fonksyionu çağırır ve bir adet parametreyi key-value şeklinde gönderir.

print("---------")

fnkLogin(kullaniciAdi = "admin",sifre="12345")  # Fonksyionu çağırır ve iki adet parametreyi key-value şeklinde gönderir.

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir