Döngüler Bölüm 3 | break ve continue

Bu yazımızda, döngüler içerisinde çok etkili bir kontrol sağlayan iki komutu göreceğiz. Bu iki komut, yalnızca döngüler içerisinde kullanılabiliyor. Bu detayı da verdiğimize göre artık başlayabiliriz.

break

'Break' kelimesi, 'kırmak' anlamına gelir. Bunu döngüde kullandığımızda bu bir sonsuz döngü olsa bile aslında döngüyü kırmamıza yani sonlandırmamıza olanak tanıyor. Ancak bunu, bir koşula bağlı olarak vermek daha sağlıklı olacaktır. Hemen nasıl çalıştığını inceleyelim.

Yukarıdaki kod, sürekli olarak sitemizin adresini yazdıran bir döngü örneğidir. Bu noktada if (line == 30000): ve break şeklinde verdiğim ifade şunu ifade ediyor: "line değişkeninin değeri 30 bin olduğunda bu döngüyü sonlandır, kır". Zaten çıktı kısmına da baktığınızda bunun böyle olduğunu göreceksinizdir. İşte, break komutu bu işe yarıyor. Söz konusu sonsuz bir döngü bile olsa break komutu bunu durdurabilir.

Örneğin, kullanıcıdan sürekli olarak ismini isteyelim. Ancak ismini istediğimizde 'q' karakterini girerse program sonlansın. Yapalım.

name isimli değişken ile kullanıcıdan ismini istiyoruz ve Python'a şunu diyoruz: "Eğer kullanıcı 'q' girerse döngüyü kır". Çıktı kısmına baktığınızda bunun gerçekten de öyle olduğunu görüyorsunuz.

continue

Anlamı, 'devam et' şeklindedir. Bu komutu kullandığımızda Python, verilen hedefi yok sayar. Ne demek istiyorum?

for i in range(0, 25): ifadesini kullandım. Bu döngü, 0'dan 25'e kadar içerisindeki kodları çalıştıracaktır. İçerisindeki kodlarda ise Python'a; i'nin 15 olması durumunda bunu atlamasını söylüyoruz. Sonrasında else ile eğer i 15 değilse bunları ekrana yazdırmasını istiyoruz. Çıktı kısmına dikkat ederseniz 15 sayısı eksik. İşte, continue bu şekilde çalışır ve kullanılır.

İkisini bir kullanabileceğimiz ufak bir uygulama yapalım. Kullanıcıdan sürekli olarak istediği bir kelime girmesini isteyelim ve bunları bir listeye ekleyelim. Ancak yasaklı olan bir kelime belirleyelim ve kullanıcı bunu girerse, listeye eklemeyelim. Dediğim gibi liste konusuna henüz gelmedik; sadece break ve continue kısımlarına odaklanın.

strings = [] şeklinde boş bir liste tanımlıyorum. Yazdığım kelimeleri bu isteye ekleyeceğiz. while True: içerisinde kullanıcıdan kelime istiyorum. Sonrasında if (word == "malware"): koşulundan hemen sonra continue komutunu verdik. Burada kullanıcı eğer 'malware' kelimesini girerse bunu listeye eklemeyeceğiz ve onu uyaracağız. Kullanıcı 'exit' ifadesini girerse program break komutu sayesinde kırılacak, son bulacak. Bu iki kelime haricindeki tüm kelimeler listeye eklenecek. Lütfen sadece break ve continue kısmına odaklanalım.

Sağdaki çıktıyı adım adım inceleyin. İlk kelimemiz 'trojan' oldu. Python, yazdığımız kodlara göre bunda bir sorun görmedi ve bu kelimeyi listeye ekledi; listenin de güncel halini bize gösterdi.

İkinci kelimemiz 'ransomware' oldu. Bu kelimede de bir sorun olmadığı için bunu da listeye ekledi ve listenin güncel halini gösterdi.

Üçüncü kelimemiz 'worm' oldu. Yine aynı şekilde; sorun yok.

Dördüncü kelimemizde 'malware' kelimesini girdik. Bu, yazdığımız kodlara göre yasaklı bir kelime olduğu için continue komutu sayesinde listeye eklenmedi ve listenin güncel haline baktığımızda malware diye bir kelimenin bulunmadığını görüyoruz.

Beşinci kelimemiz 'adware' oldu ve bunda da herhangi bir sıkıntı olmadığı için listeye eklendi.

Son olarak 'exit' komutunu verdik ve gördüğünüz üzere program sona erdi. Buradan da break komutunun düzgün çalıştığını görebiliyoruz.

İşte, break ve continue komutları bu şekilde gayet kullanışlı olabilir. Lütfen siz de kendi pratiklerinizi yapın ve bu kodu alıp kendiniz deneyin.


Yayınlanma Tarihi: 2022-10-27 19:06:50

Son Düzenleme Tarihi: 2022-10-29 21:29:39