Python’da Karar Yapıları veya Koşullu İfadeler (Decision Structures or Conditional Statements)

Python’da Karar Yapıları veya Koşullu İfadeler (Decision Structures or Conditional Statements)

Bu makalemizde python’da bir uygulama geliştirirken hangi durumlarda nasıl karar vereceğimizi öğreneceğimiz Python’da karar yapıları veya koşullu ifadelerden(decision structures and conditional statements) bahsedeceğiz
Karar yapıları veya koşullu ifadeler, bir programın işleyişini kontrol etmek, bazı durumları değerlendirmek ve belirli koşullara göre farklı işlemler gerçekleştirmek, programlama dünyasında sıkça kullanılan bir yaklaşımdır. Python, bu tür karar yapılarını oluşturmanızı sağlayan güçlü bir programlama dilidir. Bu makalemizde, Python’da kullanabileceğiniz karar yapılarını ve bu yapıları nasıl kullanabileceğinizi örnekleriyle birlikte keşfedeceğiz.

1.  İf-Else Yapısı:

En temel karar yapısı olan “if-else” ifadesi, belirli bir koşulun doğru veya yanlış olmasına bağlı olarak farklı kod bloklarını çalıştırmanızı sağlar. İf-else yapısının genel sözdizimi aşağıdaki gibidir:

 

Örnek bir kullanım gösterirsek:

 

Burada belirtilen sayi değişkenindeki  degerin pozitif durumunu sağlıyorsa pozitif olması durumda ekranda sayı pozitiftir  yazısı gözükürken, pozitif olmaması durumunda da sayı negatif veya sıfırdır ibaresini göstermesini sağladık.

Kodumuzun ekran çıktısı aşağıdaki gibidir:

2. İç İçe İf-Else Yapısı:

Daha karmaşık durumları ele almak için, “if-else” ifadelerini iç içe kullanabilirsiniz. Bu, bir koşulun doğru veya yanlış olmasına bağlı olarak birden çok farklı kod bloğunun çalıştırılmasını sağlar. Şimdi bir örnek yaparak bunu açıklayalım:

Bu örnekte, “sayi” değeri pozitif olduğunda, program önce ” sayi pozitiftir.” çıktısını verir. Ardından, ” sayi ”  çift bir sayıysa  “sayi bir çift sayıdır.” çıktısını verir; aksi halde ” sayi bir tek sayıdır.” çıktısını verir. Eğer ” sayi ” negatif veya sıfırsa, ” sayi negatif veya sıfır bir sayıdır.” çıktısını verir.

kodumuzun ekran çıktısı aşağıdaki gibidir:

3. Elif Yapısı:

Bazı durumlarda, birden çok koşulu değerlendirmeniz gerekebilir. Bu durumda, “elif” ifadesini kullanarak birden çok alternatif koşul oluşturabilirsiniz.

 

Bu örnekte, “sayi” değeri pozitifse, program ” sayi pozitif bir sayıdır.” çıktısını verir. Eğer ” sayi ” negatifse, ” sayi negatif bir sayıdır.” çıktısını verir. Eğer ” sayi ” ne pozitif ne de negatifse, yani sıfırsa, ” sayi sıfırdır.” çıktısını verir.

Kodumuzun ekran çıktısı aşağıdaki gibidir:

4. Switch-Case Yapısı:

Bazı programlama dillerinde bulunan “switch-case” yapısı, belirli bir değişkenin farklı değerlerine bağlı olarak farklı kod bloklarını çalıştırmanızı sağlar. Ancak, Python’da doğrudan bir “switch-case” ifadesi bulunmamaktaydı ve bunun yerine, genellikle “if-elif-else” yapısıyla benzer bir yapı kullanılıyordu yada switch case yapısına benzer dictionary yapısı kullanılarak yapılıyordu ama artık 3.10 python sürümüyle swtich case yapısı match-case yapısı ile kullanılmaya başlanıldı.

Şimdi biz match- case yapısı olmadan if-elif-else ile yapalım:

 

Bu örnekte, “haftanin_gunu” adında bir fonksiyon tanımladık ve parametre olarak bir gün numarası aldık. Fonksiyon içinde, numaraya göre ilgili gün adını döndürdük. Eğer geçersiz bir numara girilirse, “Geçersiz gün numarası” çıktısını verdik.

Kodumuzun ekran çıktısı aşağıdaki gibidir.

 

 

 

Switch case yapısını Dictionary yapısı ile yapalım:

 

Bu kodumuzda gerçek bir atm uygulamasının bir parçasını görüyorsunuz python 10.3 versiyonunda önce switch-case yapısının olmadığını söylemiştik ama ona rağmen ihtiyacımız olduğunda kendi switch fonksiyonumuzu yazıp kullanıcıdan aldığımız değerleri kontrol yapısına sokarak işlemlerimizi yapmış olduk.

Kodumuzun ekran çıktısı aşağıdaki gibidir:

5. Match –Case yapısı:

Python 10.3 sürümünden önce olmayan switch-case özelliği,  match-case özelliği ile  python’a kazandırılmış olundu Burada structural pattern matching feature, yani Yapısal kalıp eşleştirme özelliği ile anahtar deyimleri ile işlem yaparız. Temel kullanımı :

burada dikkat edilmesi  gereken  nokta   _(alt çizgi) ile belirtilen durumun default durumuna karşılık geldiğidir.
Şimdi bir örnek yapalım:

Bu örnekte, match-case yapısını kullanarak “meyve” değişkeninin değerine göre ilgili renkleri döndüren bir fonksiyon tanımladık. Her bir durum için case ifadesi kullanarak meyve adını kontrol ettik ve ilgili renkleri döndürdük. Bilinmeyen bir meyve girildiğinde ise _ alt çizgi ile belirtilen durumda “Bilinmeyen meyve” mesajını döndürdük. Burada dikkat edilmesi  gereken nokta kodumuzu çalıştırdığımız python sürümünün10.3 altında olmaması gerek yoksa match-case yapısını tanıyamaz.

Bu örnekte match-case yapısını kullanarak, birden çok durumu kontrol etmek ve karşılıklı ilişkili sonuçlar döndürmek oldukça kolaydır. Bu yapı, özellikle veri işleme, durum yönetimi veya işlem seçimi gibi durumlarda kullanışlıdır.

Kodumuzun ekran çıktısı aşağıdaki gibidir:

 

Sonuç olarak,  Python’da match-case deyimi ile yapısal örüntü eşleştirmeyi tanıttık. Gereken kod miktarı ve okunabilirlik açısından bir if-elif-else ifadesine göre nasıl avantaj sağlayabileceğini gösterdik. Bu yeni özelliğin burada değinmediğimiz daha birçok özelliği var – girdi olarak bir nesne sağlayabilir (kullandığımız dizeler yerine) ve nesnenin öznitelikleri üzerinde desen eşleştirme yapabilirsiniz.

 

Benzer Yazılar

Gui Dersleri #8 | LabelFrame kullanımı ve TopLevel kullanımı

Python 7 ay önce

Arkadaşlar merhaba bu makalemizde sizlere python’da LabelFrame kullanımı ve TopLevel kullanımının nasıl yappacağımızı anlatacağım.  Ayrıca size bu konu hakkında çektiğim video’yu bırakıyorum isteyen video izler isteyen aşağıdaki makaleyi okur. Şimdiden iyi seyirler ve iyi okumalar dilerim. ☺ LabelFrame kullanımı : LabelFrame widget’ı, bir çerçeve içindeki bir etiketle birlikte bir grup widget’ı oluşturmanıza olanak tanır. LabelFrame widget’ı, bir Frame widget’ının özelliklerine sahiptir ve ayrıca bir başlık etiketi içerir. Bu widget’lar, diğer widget’ları gruplandırmak için kullanılabilir.

  yukarıdaki kodumuzda görüleceği üzere formlarda widgetların daha düzenli görünmesini sağlayan labelFrame’mizi  kisi_bilgileri=LabelFrame(pencere,text=”nüfus örneği”, width=300,height=200) şeklinde yükseklik ve genişlik değerleri vererek tanımladık. Bundan sonra ise ekleyeceğimiz widgetları pencere üzerinde tanımlamak yerine kisi_ad=Label(kisi_bilgileri,text=”ad soyad”) buradaki gibi kisi_bilgileri adında tanımladığım LabelFrame değişkeni üzerine eklediğimizi belirtiyoruz. kisi_ad_giris.place(x=120,y=20) burada da Entry nesnesini place özelliği ile x ve y değerlerini vererek konumlandırıyoruz. kodumuzun ekran çıktısı aşağıdaki gibidir:   TopLevel Kullanımı: Toplevel widget’ı ise, ana pencereye bağlı olmayan bir pencere oluşturmanızı sağlar. […]

Python Dersleri | Bayrama özel uygulama yapımı

Python 7 ay önce

Arkadaşlar Merhabalar bugunkü makalemizde bayramda aklıma gelen bir uygulama senaryosunu gerçekleştirmesini size anlatıyor olacağım. Bayramda vakit ayırıp bunu yeni gerçekleştirdim umarım beğenirsiniz. Bayramınızı kutluyorum şimdiden iyi seyirler ve iyi okumalar dilerim.

Burada yapıcı(constructor ) fonksiyonumuzu tanımladık self belirteci  ile burada attribute’lar ve fonksiyonlara ulaşıyor oalcağız.

burada pencere ayarlamasınız yaptık.

burada soru etkietimizi ve yanlarından evet ve hayır butonlarını ekledik burada grid(row,column) yapısına değinecek olursak elemanlarımı grid şeklinde bize yerleştirmemizi sağlayacaktır.

burada ise buttonlarımızın command parametresine karşılık gelen fonksiyonlarımızı doldurduk.

Burda da güncelle fonksiyonumuz içinde gerekli tanımları ve durumları yaptık .

Gui Dersleri #7 | Canvas kullanımı, Scale kullanımı ve Scrollbar kullanımı ile ilgili işlemler

Python 7 ay önce

Arkadaşlar merhaba bu makalemizde sizlere Canvas(Tuval) kullanımı, Scale(ölçek) kullanımı ve Scrollbar(Kaydırma çubuğu) kullanımının nasıl oluşturacağını anlatıyor olacağım ve bunlarla ilgili örnek uygulama yapacağım. Ayrıca size bununla ilgili yukarıda bir örnek video bırakıyorum isteyen video izler isteyen aşağıdaki makaleyi okur. Şimdiden iyi seyirler ve iyi okumalar dilerim. ☺ Canvas(Tuval) kullanımı: Canvas widgeti, Tkinter’da kullanılan bir çizim alanıdır. Bu widgeti kullanarak grafikler, şekiller, metinler ve diğer çizim öğelerini ekrana çizebilirsiniz. Canvas, çeşitli interaktif grafik uygulamaları ve veri görselleştirme için kullanışlıdır.

  Bu örnekte, Canvas sınıfını kullanarak bir tuval oluşturuyoruz. width ve height parametreleri tuvalin boyutlarını belirtir. create_rectangle() ve create_oval() metotlarıyla dikdörtgen ve elips gibi çizimler yapabiliriz. Ayrıca create_text() metoduyla da belirtilen özellikte bir text yazısı yazar. Kodlarımızın ekran çıktısı aşağıdaki gibidir:   Scale(Ölçek) kullanımı Scale widgeti, Tkinter’da kullanılan bir kaydırma çubuğu bileşenidir. Kullanıcının bir aralıktaki bir değeri seçmesini sağlar. Genellikle çeşitli ayarların kontrol edilmesi veya değerlerin seçilmesi için kullanılır.

  […]

0 Yorum

Yorum Yaz

Rastgele

Web sitemiz, gezinme deneyiminizi ve ilgili bilgileri sağlamak için çerezleri kullanır. Web sitemizi kullanmaya devam etmeden önce, şunları kabul etmiş olursunuz.