Resim

Python While Döngüsü

Python While Döngüsü: Koşul Doğru Olduğu Sürece Tekrar Et

Belirsiz Tekrarlar İçin Mükemmel Çözüm

Merhaba! Programlamada, bir kod bloğunu belirli sayıda (örneğin bir listedeki her öğe için) çalıştırmak için for döngülerini kullanırız. Ancak, kodun kaç kez çalışacağını önceden bilmediğimiz durumlar da vardır. Örneğin, bir kullanıcı doğru şifreyi girene kadar denemeye devam etmesi gerektiğinde.

while döngüsü, tam da bu belirsiz tekrar senaryoları için tasarlanmıştır. while döngüsü, belirli bir koşul doğru (True) olduğu sürece içerisindeki kod bloğunu sürekli olarak çalıştırmaya devam eder.

Bu yazıda, while döngüsünün temel yapısını, döngüyü kontrol etme yollarını ve dikkat etmemiz gereken sonsuz döngü riskini öğreneceğiz.


1. while Döngüsünün Temel Yapısı

while döngüsü, if ifadesine benzer şekilde bir koşul ile başlar, ancak koşul doğru olduğu sürece çalışmaya devam eder.

Söz Dizimi

  1. while anahtar kelimesiyle başlar.

  2. Hemen ardından kontrol edilecek koşul (Boolean ifade) gelir.

  3. Koşulun sonunda iki nokta üst üste (:) konulur.

  4. Tekrarlanacak kod bloğu, while satırından bir girinti (indentation) içeride olmalıdır.

  5. Döngüyü İlerletme: Koşulu bir noktada False yapacak bir ifade, döngü bloğunun içinde yer almalıdır (aksi halde sonsuz döngü oluşur).

  • Örnek: Basit Sayaç

    sayac = 1 # Başlangıç değeri
    while sayac <= 5: # Koşul: Sayac 5'ten küçük veya eşit olduğu sürece
        print(sayac)
        sayac += 1 # Döngüyü ilerleten ifade (sayacı artırır)
    
    print("Döngü Bitti.")
    # Çıktı: 1, 2, 3, 4, 5, Döngü Bitti.
    

Kendiniz Deneyebilirsiniz:


2. Sonsuz Döngü Tehlikesi (Infinite Loop)

Eğer while döngüsünün koşulunu False yapacak bir mekanizma (örneğimizdeki sayac += 1 gibi) yoksa veya koşul her zaman True ise, döngü sonsuza kadar çalışır. Bu, genellikle programın kilitlenmesine neden olur.

# HATA ÖRNEĞİ: Sonsuz Döngü
# sayac = 1
# while sayac > 0:
    # print("Çalışıyor...") 
# # sayac artırılıyor veya değiştirilmiyor, koşul hep True kalır!

Kendiniz Deneyebilirsiniz:


3. Döngüyü Kontrol Etme: break ve continue

Bazen, döngü koşulu hala doğru olsa bile döngüyü erken bitirmek veya mevcut adımı atlamak isteriz.

a. break (Döngüden Çıkma)

break anahtar kelimesi, döngü hangi aşamada olursa olsun, program akışını döngünün hemen dışına taşır ve döngüyü tamamen sonlandırır.

  • Örnek: Şart sağlanır sağlanmaz aramayı durdurma.

    i = 1
    while i <= 10:
        if i == 7:
            print("Aranan değer (7) bulundu, döngü sonlanıyor.")
            break # Döngüden hemen çık
        print(i)
        i += 1
    # Çıktı: 1, 2, 3, 4, 5, 6, Aranan değer (7) bulundu, döngü sonlanıyor.b. continue (Bu Adımı Atlama)

b.continue 

continue anahtar kelimesi, döngünün mevcut adımındaki (iterasyonundaki) geri kalan kod bloğunu atlar ve kontrolü tekrar while koşuluna geri gönderir.

  • Örnek: Sadece tek sayıları yazdırma (çift sayıları atlama).

    j = 0
    while j < 10:
    j += 1
        if j % 2 == 0:
            continue # Çift ise bu adımı atla, başa dön
        print(j)
    # Çıktı: 1, 3, 5, 7, 9
    

Kendiniz Deneyebilirsiniz:


4. while...else Yapısı

while döngüsü, tıpkı for döngüsü gibi, isteğe bağlı bir else bloğuna sahip olabilir. Bu else bloğu, döngü koşulu False olduğu için doğal yollarla sonlandığında çalışır.

  • Kural: Eğer döngü break anahtar kelimesi ile sonlandırılırsa, else bloğu çalışmaz.

  • Örnek:

    deneme = 0
    while deneme < 3:
        print(f"Deneme: {deneme + 1}")
        deneme += 1
    else:
        print("Tüm denemeler tamamlandı.")
    
    # Çıktı: 
    # Deneme: 1
    # Deneme: 2
    # Deneme: 3
    # Tüm denemeler tamamlandı.
    

Kendiniz Deneyebilirsiniz:


Dinamik Tekrarlar

while döngüleri, programınızın ne zaman biteceğini veya duracağını verinin kendisine veya dış koşullara bırakan güçlü araçlardır. Kullanıcı girişlerini işlemek, bir kaynağın mevcudiyetini kontrol etmek veya bir koşul sağlanana kadar matematiksel hesaplama yapmak gibi durumlarda while döngüsü vazgeçilmezdir.

🔥 Python Kariyerinizi Hemen Başlatın!

Hemen kursumuza kaydolun ve bu güçlü araçları kullanarak profesyonel Python geliştiricisi olma yolunda ilk adımı atın. Kursumuzdaki uygulamalı modüller, sizi sadece bir yazılımcı adayı değil, hazır bir profesyonel haline getirecek. Python Eğitimini Udemy platformunda bulabilirsiniz.

[ Python Eğitimi Sıfırdan İleri Seviye ]

Tıklayın ve Python Eğitimine Hemen Kaydolun!

Yorumlar

Bu blogdaki popüler yayınlar

Python random Modülü

Python print()

Yazılım Nedir?