Kurs
While döngüsü, koşul True olduğunda içindeki kodu çalıştırması bakımından bir if deyimine bir ölçüde benzer. Ancak, if deyiminden farklı olarak while döngüsü, koşul True olduğu sürece kodu tekrar tekrar yürütür.
While Döngüsü

While döngüsünün sözdizimi, yukarıda da görebileceğiniz gibi if deyimine oldukça benzer. While döngüsü çok yaygın değildir, ancak bazı durumlarda oldukça faydalı olabilir.
Örnek
Diyelim ki verilerinize dayalı olarak sayısal bir model hesaplıyorsunuz. Bu genellikle, modeliniz ile veriniz arasındaki hata belirli bir sınırın altına düşene kadar aynı adımları tekrarlamayı içerir. Problemi bir koşul sağlanana kadar bir eylemi tekrarlamak şeklinde yeniden formüle edebiliyorsanız, çoğu zaman while döngüsü en uygun seçenektir.
Aşağıdaki örnekte başlangıçta 50.0 değerine eşit bir hata ile başlarsınız. Ardından bir while döngüsü yazarsınız; koşul kısmına error > 1 yazarız ki hata 1'in üzerinde olduğu sürece while döngüsü tekrar çalışsın. While döngüsünün içinde hatayı dörde böler ve error değişkenini güncellersiniz. İlk kez çalıştırdığımızda 12.5 elde ederiz.

Python daha sonra yeni hata değeri 12.5 olacak şekilde while döngüsünün koşuluna geri döner. Koşul yine true olacaktır ve kod yürütülür.

Python tekrar while döngüsünün koşuluna döner ve kodu yeniden çalıştırmayı dener. 3.125 değeri 1'den büyük olduğundan, kod hesaplamayı yapar.

Son olarak, while döngüsünün yeni koşulu 1'den küçüktür, bu nedenle kod bir hatayla sonuçlanır ve çalışmaz.

Bu örnek işinize yarayacak, çünkü artık kendi while döngünüzü kurma zamanı! ters sarkaç için çok basit bir kontrol sistemi uygulayan bir while döngüsü yazacağız. Mükemmel dik duruştan bir sapma varsa, while döngüsü bu sapmayı kademeli olarak düzeltecek.
Eğer while döngünüzün çalışması çok uzun sürüyorsa, bir hata yapmış olabilirsiniz. Özellikle, döngünün içeriğini girintilemeyi unutmayın!
While Döngüsü Hatası Örneği (Sürekli Çalışma)
Diyelim ki hata değerinin güncellenmesini yorum satırı haline getirdiniz veya kaldırdınız ve betiği yeniden çalıştırdınız. Hata güncellenmeyecek ve koşul her zaman true olacaktır. Bu da while döngüsünün sonsuza kadar çalışmasına yol açar.

Bu hatayı kendi sisteminizde yaparsanız, Python programını Control + C tuşlarına basarak kesmeniz gerekir.
Örnek
Aşağıdaki örnekte, başlangıç değeri 8 olan offset değişkenini oluşturacaksınız. Ardından offset 0'a eşit olmadığı sürece çalışmaya devam eden bir while döngüsü yazacaksınız.
while döngüsünün içinde:
"correcting..."cümlesini yazdıracaksınız.- Ardından
offsetdeğerini 1 azaltacaksınız. Bunuoffset = offset - 1ile yapabilirsiniz. - Son olarak, değişimin nasıl olduğunu görebilmek için while döngüsünün içinde
offset'i yazdırın.

Yukarıdaki programı çalıştırdığımızda aşağıdaki sonuç oluşur:
correcting...
7
correcting...
6
correcting...
5
correcting...
4
correcting...
3
correcting...
2
correcting...
1
correcting...
0
While döngüleri hakkında daha fazla bilgi edinmek için kursumuz Orta Düzey Python içindeki bu videoyu izleyin.
Bu içerik, Hugo Bowne-Anderson tarafından hazırlanan DataCamp’in Orta Düzey Python kursundan alınmıştır.
Python Döngüleri eğitimimize ve ayrıca Python'da döngüler hakkında öğrenmeye ve pratik yapmaya devam etmek için Python'da Do-While Döngüsünü Öykünme eğitimimize göz atın.
