DERS – 3 Python koşullu ifadeler, if, elif, else
Koşullu İfadeler
Koşullu ifadeler belli bir koşulun gerçekleşmesi durumunda yapılacak işleri ifade eder. Önceki dersimizde boolen bir değişkene karşılaştırma sonrası True yada False değerlerinin atandığını söylemiştik. Koşullu ifadelerde atılan bu booen ifadeler neticesinde True ve False olasılıkları için ayrı ayrı kod satırları çalışır.
Aşağıdaki video Python koşullu ifadeleri ayrıntılı bir şekilde anlatıyor.
Aşağıdaki Python koşullu ifadeler videosunu izleyebilirsiniz…
KOŞULLU İFADELER YAPISI
if (KOŞUL1):
kod satırlarını
kod satırlarını
kod satırlarınıelif (KOŞUL2):
kod satırlarınıelif (KOŞUL3):
kod satırlarınıelse:
kod satırlarını
PYTHON Koşullu İfadeler ÖRNEK-1
vizeNotu1 = float(input("1. Vize notu gir : ")) vizeNotu2 = float(input("2. Vize notu gir : ")) finalNotu = float(input("Final notu gir :")) # Vize notlarının ortalamasının %40 ve Final puanının %60 ını hesaplayalım . genelOrtalama = (((vizeNotu1+vizeNotu2)/2)*0.4) + (finalNotu*0.6) print("Not ortalamanız : ", genelOrtalama) # Koşul kısmına bir de final notunun 50'den büyük olmasını şart koşalım . if finalNotu >= 50: if (genelOrtalama >= 85 and finalNotu >= 50): print("Harf Notunuz AA") elif genelOrtalama >= 75 and genelOrtalama < 85: print("Harf Notunuz BA") elif genelOrtalama >= 70 and genelOrtalama < 75: print("Harf Notunuz BB") elif genelOrtalama >= 65 and genelOrtalama < 70: print("Harf Notunuz CB") elif genelOrtalama >= 60 and genelOrtalama < 65: print("Harf Notunuz CC") elif genelOrtalama >= 55 and genelOrtalama < 60: print("Harf Notunuz DC") elif genelOrtalama >= 50 and genelOrtalama < 55: print("Harf Notunuz DD") else: print("Harf notunuz FF kaldınız .")
Yukarıdaki örnekte kullanıcıdan vize1, vize2 ve final notları isteniyor. Genel ortalama, vize1 ile vize2 nin ortalamasının %40’ı, finalin ise %60’ı alınarak bulunuyor.
Bu örnekte iç içe if kullanımı var. Eğer final notu 50 ve 50 den büyükse not yazdırma bölümündeki diğer if yapısı devreye giriyor. Final notu 50 den küçükse ekrana “Harf notunuz FF kaldınız . ” yazar. İkinci if döngüsü final notunun 50den büyük yada eşit olması durumundan çalışır.
Örnekte de görüldüğü gibi istediğimiz kadar “elif” kullanabiliriz. “genelOrtalama” değişkeninde ki değer karşılaştırılır ve aralığı bulunur.
Python Koşullu İfadeler ÖRNEK-2: (Hesap Makinası)
print ("1-->Adding, 2-->Çıkarma, 3-->Çarpma, 4-->Bölme")
a=int (input ("birinci sayıyı giriniz:"))
b=int (input ("ikinci sayıyı giriniz:"))
c=int (input ("işleminizi seçiniz"))
if (c==1):
sonuç = a+b
print (sonuc)
elif (c==2):
sonuç = a-b
print (sonuc)
elif (c==3):
sonuç = a*b
print (sonuc)
elif (c==4):
sonuç = a/b
print (sonuc)
else:
print ("hatalı giriş...")
Yukarıdaki örnekte basit bir hesap makinası kodları verilmiştir. Kullanıcıdan iki sayı girilmesi isteniyor ve “a” ve “b” değişkenlerine bu sayılar atanıyor. Daha sonra işlem seçmesi isteniyor ve “c” değişkenine bu değer atanıyor. 1,2,3,4 girişleri için sırası ile Toplama, Çıkarma, Çarpma ve Bölme işlemleri tanımlanmıştır.
If yapısı içinde “c” değişkenindeki değerin kontrolü yapılmaktadır. Eğer c değişkeni 1 ise toplama, 2 ise çıkarma, 3 ise çarpma ve 4 ise bölme işlemi için kodlar ayrı ayrı yazılıyor. Son olarak else yapısının kodu işe “Hatalı Giriş” çünkü 1,2,3,4 girişlerinin olmadığı her durumda else yapısının altındaki kod çalışacaktır.
Dikkat edilmesi gereken önemli bir bilgi de if yapısındaki koşulların her seferde sadece biri TRUE değeri üretir ve onun kodları çalışarak “sonuc” değişkenine işlemin sonucu atanır ve ekrana yazdırılır.
Python Koşullu İfadeler ÖRNEK-3: Girilen bir sayının pozitif çift sayı olup olmadığını kontrol eder.
sayi = int(input('sayı: '))
if (sayi > 0):
if (sayi % 2 ==0):
print('girilen sayı pozitif çift sayıdır.')
else:
print('girilen sayı pozitif ancak sayı tek.')
else:
print ('girilen sayı negatif sayı.')
Yukarıdaki örnekte ise kullanıcıdan bir sayı istenir ve bu sayının pozitif, negatif, tek yada çift olma durumu ekrana yazdırılır. Bu örnek de iç içe kullanılmış if yapıları vardır.
Dıştaki if yapısında pozitif, negatif yada sayının sıfır olma durumunun kontrolü gerçekleşmektedir. “sayi” değişkeni sıfırdan büyük olduğu durumda başka bir if yapısı açılmış ve sayının tek yada çift olma durumu sorgulanmaktadır. “sayı%2” ile sayının 2 ile kalanı bulunur ve “kalan” değişkenine aktarılır. Kalan 0 ise sayı çift değilse tek sayı olur.
Python Koşullu İfadeler ÖRNEK-4: E-mail ve parola bilgileri ile giriş kontrolü yapınız.
email = ‘’[email protected]‘’
password = ‘’deneme123‘’
girilenEmail = input(‘’email: ‘’)
girilenPassword = input(‘'password:’')
if (girilenEmail == email):
if (girilenPassword == password):
print(‘’uygulamaya giriş başarılı.’’)
else:
print(‘’parolanız yanlış’’)
else:
print(‘’email bilginiz yanlış’’)
Yukarıdaki örnekte ise tanımlanmış olan “email” ve “password” değişkenleri kullanıcıdan istenmektedir. Daha sonra iç içe oluşturulan if yapıları ile bilgilerin doğruluğu kontrol edilmektedir.
Dışarıdaki if yapısında email kontrolü yapılır. email girişi yanlış ise “email bilginiz yanlış ” uyarısı yapılır. Email bilgisi doğru ise password kontrolü yaptırılır. Password bilgisi de doğru ise “uygulamaya giriş başarılı” bilgisi ekrana gelir.
Python Koşullu İfadeler ÖRNEK-5: Girilen 3 sayıyı büyüklük olarak karşılaştıralım.
a = int(input('a: '))
b = int(input('b: '))
c = int(input('c: '))
if (a > b) and (a > c):
print(a, ‘’en büyük sayıdır.’’)
elif (b > a) and (b > c):
print(b, ‘’en büyük sayıdır.’’)
elif (c > a) and (c > b):
print(c, ‘’en büyük sayıdır.’’)
Bu örnekte ise kullanıcıdan birbirlerinden farklı üç sayı (a,b,c) girmesi istenir. Girilen bu sayılar if yapısı içinde sorgulanarak sıralama sağlanır.