Birçok programlama dilinde olduğu gibi Python programlama dilide, döngü akışlarını değiştirmek için break ve continue ifadelerini kullanır.
Döngüler belli bir şart sağlanana kadar kod bloğunun tekrarlamasını sağlamak için kullanılır ve programlama dilinin vazgeçilmez bir yapı taşlarından biridir. Fakat bazen biz dögüleri belirli ekstra şartlar dahilinde kod bloğunu sonlandırmak, yada başa döndürmek 'yinelemek' isteyebiliriz işte bu tip durumlarda bu ifadeleri kullanırız.
Break ifadesi, içinde bulunduğu döngüyü sonlandırır. Programın kontrolü döngünün gövdesinden hemen sonraki ifadeye akar.
Break ifadesi iç içe çalışan döngülerde (başka bir döngü içinde döngü) yer alıyorsa, break, bulunduğu döngüyü sonlandırır.
break
For döngüsü ve while döngüsündeki break ifadesinin çalışma şekli aşağıda kod şeması üzerinden gösterilmiştir.
for val in "pythontr": if val == "t": break print(val) print("Bitti")
p
y
Bitti
Bu programda, "pythontr" stringi kelime üzerindeki karakter sayısı kadar yineleniriz. Her döngü tekrarında harfin "t" olup olmadığını kontrol eder. Dolayısıyla, çıktılarımızda "t" harfini bulana kadar devam eder bu harfi bulduktan hemen sonrada döngümüz sona erer.
Continue ifadesi, yalnızca geçerli yineleme için bir döngü içindeki kodun geri kalanını atlamak için kullanılır. Döngü sona ermez, ancak bir sonraki yinelemeyle devam eder.
continue
For ve while döngüsünde continue ifadesinin çalışması şekli aşağıdaki şekilde gösterilmiştir.
for val in "pythontr": if val == "t": continue print(val) print("Bitti")
p
y
h
o
n
r
Bitti
Bu program yukarıdaki break ifadesi örneği ile aynıdır, ancak break ifadesi continue ile değiştirilmiştir.
String ifade içinde "r" harfi ile karşılaşırsak, bloğun geri kalanını yürütmemek için, döngüye başına dönerek döngüye devam ediyoruz. Dolayısıyla, çıktılarımızda "r" harfi haricindeki tüm harflerin yazdırıldığını görürüz.
Yorumlar
iç içe girmiş 2 listede arama yapıyorum ancak listede bulunduğunda yokta yazmakta bu kodu düzeltmemde yardım edebilirmisin