ProgramlamaPython

Python Döngüler

Programlamada tekrarlı işlemleri daha hızlı ve kontrollü yapmak için bazı yapılar vardır. Bunlara genel anlamda döngüler denilmektedir ancak kullanımı ve yapı itibariyle birbirinden farklı yapılardır. Döngülerdeki amaç daha önceden işlem sayısı verilmiş kodları o işlem sayısı kadar kod yazmaktan kurtarmaktır. Örneğin 1000 kişilik bir personel listesi olduğunu düşünelim , bu personellerden 5 tanesi bu gün işe gelmedi , şimdi bu işe gelmeyen 5 personeli bulmak kod yazmak istediğimizde elimizdeki veri tabanına veya listeye bakarak hangilerinin gelmediğini if else ile bulabiliriz ancak bu oldukça zaman alacak bir işlem olacaktır ve her personel için aynı kodu sadece personel adı değiştirerek sorgulamamız gerekir, işte bu gibi bir problemde yardımımıza döngüler yetişir ve sadece bir kaç belirteç ile girilen bilgiler liste eleman sayısı veya veri tabanı satır sayısına göre veya sizin belirlediğiniz bir sayıya göre tekrarlar. Şimdi genel manada ne anlama geldiğini anlattığım döngüleri parçalayarak içeriğindeki birbirinden farklı yapıları ele alalım;

While Döngüsü

While python’da yazdığımız kodları tekrar çalıştırmamızı sağlayan bir döngüdür. Aslında döngüleri bir tekerleğe benzetebiliriz. Her turda tekerin başlangıç noktası bir tam turda yine aynı yere gelir ancak katedilen yol bir tur kadardır. Döngülerde bu şekildedir ve while döngüsü içerisindeki kodları bir tam turda çalıştırır ve yeniden başladığı noktaya gelerek buna devam eder. While döngüsünden çıkmak için ya içerisine True – False durumuna düşeceği bir değer girilmelidir veya bu döngü sonsuz olsun deniliyor ise true veya false bir sabit değişkenin yazılması gerekmektedir. Örneğin 1’den 20’ye kadar saydıran bir while döngüsü yazmak istediğimizde şöyle bir şey yapmalıyız;

Örnek 1

Yukarıda ki örnekte görüldüğü üzere while döngüsü, koşulu olan sayi değerinin, 20’ye eşit veya küçük olma durumu bozulana kadar saymaya devam etmiştir. Burada “sayi” değişkeninin mevcut değerinin artırılması için sayi=sayi+1 işlemi eklenmiştir. Bu “sayi” değişkenine mevcut değere bir ekleyip yeni değeri belirle demektir. Yani sayi 5 ise 5+1 yapılarak bir sonra ki döngü için rakam hazırlanır. While her yeni başlangıçta koşulu kontrol eder eğer koşul tutuyor ise o zaman saydırmaya devam edecektir bu sebeple döngülerde koşul yapılarına daha dikkat edilmelidir.Eğer yukarıdaki örnek “While sayi<=20” yerine “While True” olsaydı o zaman sayi değeri program kitlenene kadar veya siz onu durdurana kadar devam ederdi. Tıpkı aşağıdaki örnek gibi ;

Örnek 2

Genellikle while True gibi bir işlem esnasında True durumunu bozacak bir işlem veya “break” kodu kullanılır. “break” Türkçe anlamı ile kır demektir yani kırmak fiilidir, python bu kodu gördüğünde döngüyü kırarak döngüyü sonlandırır.

For Döngüsü

For döngüsü de while döngüsüne benzer ancak biraz daha yeteneklidir bu döngü. Elbette ki while döngüsü yeteneksizdir diyemeyiz ancak ikisininde birbirine kıyasla becerilerinin üstün olduğu durumlar vardır. For döngüsünün yazım kuralı aşağıdaki resimdeki gibidir;

For Döngüsü Yazım Biçimi

Yukarıdaki gibi bir for döngüsünü şu şekilde okumalıyız ; değişken adlı bilgideki her elemanı degişkenadi değişkenine at ve bu atadığın değişken ile işlem yap.

Şimdi bununla ilgili bir örnek yaparak konuyu daha detaylı ele alalım;

Örnek 3

Yukarıdaki “Örnek 3” görseli içinde yapılan işlemin güzel Türkçe’mize dönüştürülmüş hali şudur ;

liste adındaki liste veri türüne sahip değişkenin içerisinde ki elemanları dil adlı değişkene aktar ve if yapısına girip Python yazılı bilgi ile dil adlı değişkeni karşılaştır, eğer veriler birbirine eşit ise o zaman if içine gir ve Python Dilini Öğreniyorum yazdır.

pass , break ,continue

pass

Yukarıda işlediğimiz while ve for döngüsünü kullanırken içerisinde koşullu durumlar oluşturabilir ve bu koşullara göre işlem gidişatını şekillendirebiliriz. Örneğin bir kullanıcının parola belirlemesini isterken parola kısmının boş geçilmemesini sağlamak için karakter yazılmış mı yazılmamış mı bunu kontrol etmemiz gerekebilir. Bunu if else yapısı ile kontrol edip yazılmadı ise diğer koşullara geçmesini sağlayabiliriz ancak bu gözle görülür bir yavaşlık sağlamasa bile program işleyişi açısından yavaştır. İşte bu gibi koşullarda uygulamanın döngünün en başına gitmesini sağlamak için pass deyimini kullanabiliriz. Böylece Python pass gördüğü yerde diğer koşulları yok sayarak döngünün en başına gidecektir. Bir örnek ile izah edecek olursak;

Örnek 4

Yukarıdaki örnekte görüldüğü üzere eğer herhangi bir bilgi girilmedi ise uyarı verilip döngü başa alınıyor. pass kullanımında ise ;

Örnek 5

Yukarıdaki örnekte ise pass kullanılarak diğer koşullara bakılmadan döngünün başına gidilerek yeniden kodlar ele alınmaktadır.

break

Yukarıda break kodunun programın işleyişindeki döngüyü kırdığını ve döngüden çıktığını söylemiştim. Bu durumu genellikle koşullu durumlarda koşul sağlandığında döngüden çıkmak için kullanırız.

Yukarıdaki Örnek 4 ve Örnek 5 üzerinde ele aldığımız koşulda break kullanılmıştır şimdi bu break deyimini kaldırarak programın işleyişine bakalım ve daha sonra yeniden break deyimini ekleyerek sonraki duruma bakalım ;

Örnek 6

Örnek 6 da görüldüğü üzere break kullanılmadığında döngü sonsuza kadar devam edecektir çünkü koşullar sağlanmış olsa bile döngüden çıkması için herhangi bir komut bulunmamaktadır. Şimdi aynı örnekte yorum satırı haline getirilen break deyimini açarak kodumuzu o hali ile çalıştıralım ve sonucu kontrol edelim;

Örnek 7

Örnek 7 de görüldüğü üzere break deyiminin kullanımı ile koşul sağlandığında döngü kırılarak döngünün tekrar etmesi engellenmiştir.

continue

Continue deyimi kendisinden sonra gelen işlemi programın yok saymasını sağlar. Örneğin yukarıda ki parola belirleme örneğinde biraz değişiklik yaparak kısa parola girilmesi durumunda aldığımız uyarıyı contiune kullanmadan ve daha sonra kullanarak inceleyelim ;

Örnek 8

Örnek 8 içerisinde görüldüğü üzere parola kısmı eğer 6 karakterden kısa ise o zaman hata uyarısı veriyor. Bakalım contiune kullandığımızda nasıl bir işlem yapacak;

Örnek 9 da görüldüğü üzere contiune deyimi kullanılarak koşulun sağlandığı durumda hata uyarısı vermeden başa dönmüş ve yeniden parola istemiştir.

Evet bu yazının da sonuna geldik. Bir sonraki yazıda görüşmek dileğiyle .

Etiketler
Daha Fazla Göster

Bir Cevap Yazın

Göz Atın

Kapalı
Başa dön tuşu
Kapalı
Kapalı

Reklam Engelleyici Algılandı

Lütfen reklam engelleyiciyi devre dışı bırakarak bizi desteklemeyi düşünün