Merhabalar,
Şu ana kadar kabaca 4 işlem ve biraz fazlasını, print ve input komutlarını, değişken kavramını, int, float ve str türlerini, kare yahut diyez " # " işaretiyle kodumuzun içinde notlar alabileceğimiz, toplama işaretinin " + " hem sayıları, hem yazıları toplaya/ yapıştıra bildiğini, inputtan her zaman metin türünde bilgi geldiğini, sayılarla metinleri birbirine yine int, float ve str parantezine alarak dönüştürebileceğimizi gördük. Son olarak inputtan girilen bir değişkenle "kış" metnini "==" ile kıyaslayıp sonucuna göre bazı kodları çalıştıran if yapısından bahsettik. Bugün else ne işe yarıyor onunla başlıyoruz.
Örnek olarak, hesabında 900 lira olan birinin ATM den para çekmek istediğini düşünelim :
Bu koddaki en önemli yer if satırında yer alan ve karşılaştırmayı nasıl yapacağımızı Pythona anlatan büyüktür " > " işareti. tutar değişkenindeki sayı 900 den büyükse hemen alt satırdaki print komutu çalıştırılacak ve "Bakiye yetersiz" denecektir. Aksi takdirde else : satırından sonraki print komutu çalıştırılacak ve "İşleminiz yapılıyor" denecektir.
Eşitlik testini çift eşittir ile yaparken, büyüktür, küçüktür testini buradaki gibi normal büyüktür " > " ve küçüktür " < " sembolleriyle yapacağız, unutmuyoruz. İki nokta üstüste işaretinden sonraki print kodlarını biraz içerde yazmayı da unutmuyoruz.
Her zaman buradaki gibi iki durumlu karşılaştırmalar yeterli olmayabilir. Bu durumda da yardımımıza elif komutu yetişiyor. Günün saatine göre karşılama yapan bir kod düşünelim:
Takip edebiliyoruz değil mi. Varsayalım saat değişkeni kod çalıştırıldığı andaki zamanı gösteriyor. Eğer 10 dan küçükse sadece ilk if ten sonraki kod, 17 den büyükse sadece elif ten sonraki kod, bu iki koşul da tutmuyorsa yani saat 10 ile 17 arasındaysa, else ten sonraki print kodu çalışacaktır.
Biraz daha ileri bir konu ama yeri gelmişken bahsedelim, tek seferde birden fazla durumu kontrol etmek için and, or ve not terimlerini kullanmamız gerekiyor.
or ( VEYA ) işlemi
Bu kodda da varsayalım ki bugün değişkeninde kodun çalıştırıldığı gün bilgisi mevcut. Buradaki en önemli yer aradaki or kelimesi, zira print kodunun çalışmasının bütün mantığını burası belirliyor. bugün cumartesi VEYA pazarsa sokağa çıkmıyoruz. Mantıksal VEYA işleminin (or) geçerli olduğu bir test bu, yani sağdaki ve soldaki testlerden herhangi biri tutuyorsa olumlu sonuç alıyoruz. Zorunlu değiliz ama testlerin her birini parantez içine almak, kodu görsel olarak takip etmeyi kolaylaştırdığı için tavsiye edeceğimiz bir tarzdır.
and ( VE ) işlemi
Burada ise hava sıcaklığını gösteren bir hava değişkeni ile yağmurun yağıp yağmadığını gösteren bir yağmur değişkeni kullanıyoruz. hava "soğuk" sa VE yağmur "yağıyor" ise print kodu çalıştırılacak. Mantıksal VE işleminde her iki koşul da aynı anda geçerliyse ancak olumlu sonuç alındığını hatırlayalım.
not ( DEĞİL ) işlemi
Burada da ışıklar değişkeninin değeri "açık" DEĞİL print komutu çalıştırılacaktır. Aynı kodu " != " ile şu şekilde de yazabilirdik :
Tüm bu örneklerde Pythonun arkaplanda sürekli kullandığı veri tipine bool diyoruz. Nasıl ki int 1, 45, -126 gibi tamsayılarsa, float 0.5, 3.14 gibi ondalıklı sayılarsa ve str "elma", "yağıyor" gibi metinlerin veri tipiyse, bool da sadece tam olarak şu iki değeri alabilen veri tipi : True ve False. Aşağıda örnek olarak bazı basit bool işlemleri ve yanlarında # ile yorum olarak, çalıştırıldıklarında gelecek sonuçları yazalım:
Değişkenlerin o anki değerlerine bağlı olarak karar veren kodlar yazmak programcılığın en önemli kısmıdır desek yanlış olmayacaktır. Bugün de biraz yüklendik ama temellerimiz sağlam olsun istiyoruz. Takıldığınız bir yer varsa bir önceki yazıyı ve bu yazıyı sakin kafayla tekrar bir gözden geçirmenizi tavsiye ederim. Tekrar görüşmek dileklerimle hoşçakalın.
Öğrendiklerimizi aşağıdaki online sitelerden herhangi birinde uygulamayı ihmal etmeyin :
- Python 117 - Numpy 2 / 11.07.2021
- Python 116 - Pythonu online ve kütüphaneleriyle birlikte kullanmak / 04.07.2021
- Python 115 - Pythonda Kütüphaneler ve NumPy / 27.06.2021
- Python 114 - Alıştırmalar / 20.06.2021
- Python 113 - String İşlemleri / 13.06.2021
- Python 112 - For ve While döngüleri / 30.05.2021
- Python 111 - Özet / 23.05.2021
- Python 110 - Fonksiyonlar / 29.03.2021
- Python 109 - Slicing / 28.02.2021