Python Eğitimleri : 13.Ders

Python Eğitimleri : 13.Ders

Herkese Merhaba,

Bu yazımda ileride yazacağımız programlarda sıkça kullanacağımız konu olan Koşullu Durumları göreceğiz.

Koşullu Durumlar

Koşullu durumların Python’da bir durumu kontrol ederken kullanılır. Aslında biz Python’a eğer istenilen durum bu ise şöyle yap, değilse onu yapma gel bunu yap diyormuşuz gibi düşünebilirsiniz. Bu koşullu durumları ilk olarak if bloğu ile yazmaya başlayalım.

if Bloğu

if kelimesi Türkçe’de eğer demektir. Python’da da mantık aynıdır.Yani bir koşul durumuna hangi durumda ne yapması gerektiğini söylemek için bu if bloğunu kullanabiliriz. Koşulu kontrol etmek istediğimizde bu işlemi if ile yaparız. Kullanımı şöyledir:

if (koşul):

  • Bir girinti boşluk ile if bloğunun altına gerekli kodları yazarız.
  • Burada parantez içine koşul yerine yazacağımız kontrol etmek istediğimiz ifade, eğer doğruysa yani koşul sağlanıyorsa True olur ve if bloğu çalıştırılır.
  • Koşul sağlanmıyorsa False olur ve if bloğu çalışmaz.

Örnek yaparak kullanımını görelim.

Bu örnekte kullanıcıdan bir sınav notunu girmesini istedik. Koşul olarak eğer sınav notu 50’den büyükse dersi geçti olarak, 50’den küçükse dersten kaldı olarak alıyoruz. Gördüğünüz gibi if’ten sonra parantez içine koşulumuzu yazdık. Parantez kullanmasanız da kod düzgün çalışacaktır fakat daha karmaşık durumları önlemek için parantez kullanmanızı öneririm. Koşulu yazdıktan sonra if bloğunun içine bir girinti boşluk bırakarak koşul sağlandıktan sonra çalışmasını istediğimiz kodu yazdık.

Çıktımıza bakalım:

Eğer sınav notu 50’den düşük olsaydı ne olurdu?

Bu koda göre sadece “Sınav notunuz: ” kısmı çalışırdı ve örneğin “Sınav notunuz: 40” yazardı. Bu durumu else bloğu ile çözebiliriz fakat şu an sadece if bloğunu bildiğimiz için if ile çözelim.

Bu şekilde if bloğunda iki koşulu art arda yazarak çözebiliriz. Bu kodun çıktısı:

 

Genellikle aynı kodda birden fazla if bloğu kullanılmaz. Şimdi göreceğimiz else bloğunu kullanınca zaten 2. if bloğuna gerek kalmıyor.

else Bloğu

Eğer if bloğundaki koşul ifadesi sağlanmazsa yani False olduğu durumda if bloğu çalışmaz ve sonraki blok olan else bloğu çalışmaya başlar. Kullanımı şöyledir:

if (koşul):

  • Bir girinti boşluk ile if bloğunun altına gerekli kodları yazarız.

** if bloğunda ki koşul sağlanmadı ve aşağıdaki else bloğuna geçti **

else:

  • Bir girinti boşluk ile else bloğunun altına gerekli kodları yazarız.

else bloğu tek başına kullanılamaz. Mutlaka kendinden önce if bloğu kullanılmalıdır. Ayrıca gördüğünüz gibi else ifadesinin yanında herhangi bir koşul durumu belirtmedik. else bloğu if’te bulunan koşul sağlanmıyorsa çalışır.

Yukarıda 2 if ile yazdığımız örneği if – else kullanarak yazalım.

Burada not eğer 50’ye eşit veya büyükse if bloğu çalışır. Not 50’den küçük ise if bloğu çalışmaz ve direkt else bloğu çalışmaya başlar. Bu kodların çıktısı yukarıdaki çıktılarla aynıdır.

if – else ile ilgili başka örnek yapalım.

Şimdiki örnekte kullanıcıdan bir programa girmesi için gerekli olan kullanıcı adı ve parola isteyelim. Sisteme giriş yapabilmesi için bilgileri doğru mu diye kontrolünü yapalım.

Bu örnekte kullanıcı adı string olduğu için dönüşüm yapmaya gerek yoktur. Parola da sabittir ve sayı ile birlikte harfte içerebilir. Bu yüzden onda da dönüşüm yapmadık. Koşul olarak k_adı == “mbercin” and parola == “12345” ifadesinin sağlanması gerekir. Kullanıcı adı ve parolayı tırnak içinde yazmamızın sebebi string ifade olmalarından kaynaklanmaktadır. Bu koşul sağlanırsa if bloğu çalışır, sağlanmazsa else bloğu çalışır.

Koşul sağlandığında kodumuzun çıktısı:

Koşul sağlanmadığı zaman kodumuzun çıktısı:

Bu örnekte koşul ifadesinde and operatörünü kullandık. Kullanıcı adı doğru olup parola yanlış olsa veya kullanıcı adı yanlış olup parola doğru olsa bile koşul sağlanmamış olur ve else bloğu çalışır. and operatöründe iki ifadeninde doğru olması gerekir.

Bu yazımda anlatacaklarım bu kadardı. Bu konu cidden çok sık kullandığımız bir konu. O yüzden kendiniz de birçok örnek yaparak konuyu daha iyi kavrayabilirsiniz. Bir sonra ki yazımda görüşmek üzere, hoşça kalın.