Python'da For döngüsü

witlaus

Hectopat
Katılım
14 Haziran 2020
Mesajlar
661
Çözümler
1
Yer
Bursa
Yeni yeni Python öğrenmeye başladım hem kitaptan hem de videolardan ancak "For" döngüsüne bir türlü kafam basmıyor. Mantığını anlayamıyorum, oturmuyor. Siz nasıl öğrendiniz bu döngüyü? While döngüsünü anladım bu arada.
 
İlk başladığımda karşılaştığım şeylerden bir tanesi. Ama sonra, Hintli bir hoca, tüm her şeyi çözdü.

Kendisi şöyle anlatıyordu; kahvenizin şeker miktarını belirlediniz ve kahveniz o miktara gelene kadar şeker atıp karıştıracaksınız. En son otomatik olarak tadına bakacak ve duracaksınız. For döngüsü de böyle çalışır.

C++:
for(int i = 0;/*Başlangıç şekeriniz. Şu an kahvenizde kaç şeker var?*/ i < 100; /*Kaç şekerde duracağınız*/i++ /*Kaç tane şeker atacağınız. i+=2 derseniz mesela 2 şeker birden atarsınız.*/){
 
 
    //kahvenizi nasıl karıştırırsınız? karıştırırken televizyona da bakar mısınız? öyleyse televizyona bakalım....

televizyonaBak(); //Şeker atar atmaz televizyona bakacaktır :P
 
 
}

Açıkçası Python, söz dizimi ile çok aykırı bir dil bence. C türevi dillere benzemiyor. For döngüsü, foreach() biçiminde, aynı @The Anorak 'nin dediği gibi...
 
Son düzenleme:
Python üzerindeki For diğer dillerdeki for(i = 0; i < n; i++) mantığı ile değil foreach (var item in list) mantığı ile çalışıyor. Programlama temeliniz olmadığı için zorlanıyorsunuz.

Genel olarak For döngüsünü anlamak için C veya C# derslerindeki For'u öğrenip sonrasında Python'a tekrar dönerseniz çok daha kolay anlayabilirsiniz.
 
Temel mantık olarak bir değeri 10 defa technopath yazmak istesen 10 defa print yapman gerekir. Aynı değeri 1000 gibi bir print yapmak istersen tekrar kullanarak bir döngü yaratırsın. Eğer technopath yerine değer olarak i atarsan her on defada 1000 ulaşana kadar i değerinin içindekini çalıştırır.
 
Genel mantık şudur;

range methodu aldığı parametere göre bir aralık oluşturur.
Örnek:
range(1, 5) derseniz [1, 2, 3, 4] diye bir dizi oluşturacaktır.
range(1, 10) derseniz [1, 2, 3, 4, 5, 6, 7, 8, 9] ""
range(1, 10, 2) derseniz [1, 3, 5, 7, 9] ""
range(5, 2, -1) derseniz [5, 4, 3] ""
gibi.
Birinci parametre başlangıç, İkinci parametre bitiş(e kadar), 3. parametre artış miktarı(eğer kullanılmazsa 1 olarak alınır.)
for i in range(1, 10) dediğiniz zaman her bir adımda range listesi içerisindeki elemanı tek tek i'ye atayarak ilerle diyorsunuz.
 
Yeni yeni Python öğrenmeye başladım hem kitaptan hem de videolardan ancak "for" döngüsüne bir türlü kafam basmıyor. Mantığını anlayamıyorum, oturmuyor. Siz nasıl öğrendiniz bu döngüyü? While döngüsünü anladım bu arada.

For döngüsü tekrar döngüsüdür mesela print("hello world") kodunu 10 kere yazalım.

Python:
for i in range(10):
 print("hello world")

Bu kod print("hello world") kodunu 10 kere tekrar edecektir
Örnek ile verdim bir de şöyle bir şey buldum:
Bu içeriği görüntülemek için üçüncü taraf çerezlerini yerleştirmek için izninize ihtiyacımız olacak.
Daha detaylı bilgi için, çerezler sayfamıza bakınız.
 

Yeni konular

Geri
Yukarı