Arama butonu
Bu konudaki kullanıcılar: 1 misafir
8
Cevap
207
Tıklama
0
Öne Çıkarma
iç içe döngüler
L
5 yıl
Yüzbaşı
Konu Sahibi

herkese merhaba iç içe döngüler nasıl çalışıyor anlamaya çalışdım ama baya bir kafa karıklıgına sebebiyet verdi şöyle bir örnek verirsem

for a in range(3):
    for b in range(3):
         result.append((a,b))


Bu kod nasıl çalışıyor mümkün olduğunca açıklayıcı anlatırsanız memnun olurum.

DH forumlarında vakit geçirmekten keyif alıyor gibisin ancak giriş yapmadığını görüyoruz.

Üye olduğunda özel mesaj gönderebilir, beğendiğin konuları favorilerine ekleyip takibe alabilir ve daha önce gezdiğin konulara hızlıca erişebilirsin.

Üye Ol Şimdi Değil



M
5 yıl
Teğmen

Kodu soyle tamamladim, ekrana ciktiyi bastirabilmek icin.


https://replit.com/@mosahin/CommonNewPriorities


result=[]
for a in range(3):
for b in range(3):
result.append((a,b))
print(result)

Satir satir anlatmak gerekirse:

  • Bos bir liste olusturuyoruz.
  • Bir dongu tanimliyoruz. Bu dongu 0 dan baslayip 3 e kadar (3 dahil degil) a degiskenine tamsayi degerler atayacak.
  • Yine bir dongu tanimliyoruz. Bu dongu de 0 dan baslayip 3 e kadar (3 dahil degil) b degiskenine tamsayi degerler atayacak.
  • result adli listeye eleman ekliyoruz. Her dongude bu deger degisecek.
  • listeyi ekrana bastiriyoruz.

Ic ice dongude mantik su. En distaki donguden en icteki donguye dogru gidersin. Ve yine ayni sekilde en icteki donguden en distaki donguye dogru cikarsin. En icteki dongunun isi bitmeden ustteki donguye cikilmaz. Bu cikis islemi ya dongude donulecek deger kalmamistir (3. satir icin konusursak b nin 3 oldugu anda artik dongu calismaz ve bir ust donguye geri donersin. En son b icin yazdirdigin deger 2 olarak kalir) Veya ozel islemlerle (break, goto gibi) donguden cikmak mumkundur. Bu yuzden ilk basilan degerler sirasiyla (0, 0), (0, 1), (0, 2) olacaktir. (0,2) degeri basildiktan sonra icteki dongu biter, ve ust donguye geri donulur. Ustteki donguye donuldugunde artik a nin degeri 0 degil 1 olmustur. Fakat tekrar icteki donguye girildiginde b nin degeri yine 0 dan baslayacaktir. Bu yuzden (0, 0), (0, 1), (0, 2) den sonra ekrana basilan deger (1,0) olur.

Umarim daha net olmustur simdi.





< Bu mesaj bu kişi tarafından değiştirildi mosahin -- 29 Ekim 2020; 20:8:55 >

L
5 yıl
Yüzbaşı
Konu Sahibi

öncelikle cevabın için teşekkürler benim anladığım kadarıyla 2. döngü(yani 3. satır) b degişkeni 2 olmadan üsteki döngü çalışmaz bu yüzden 2. döngü çalışmayı durdurana kadar ilk döngü sürekli 0 değerini basacak taki 2. döngü b degişkeni 2 basıp döngü durunca ilk döngü bir değerini basıp 2. döngü ise aynı şekilde devam edecek sanırım doğru anladım





< Bu mesaj bu kişi tarafından değiştirildi layk5t -- 30 Ekim 2020; 22:13:2 >
Bu mesaja 1 cevap geldi.
S
5 yıl
Yüzbaşı

Kodlarının bazı yerlerine print ekle. Değerleri o şekilde inceleyerek daha anlaşılır olmasını sağlarsın



< Bu ileti DH mobil uygulamasından atıldı >
Bu mesaja 1 cevap geldi.
M
5 yıl
Teğmen

quote:

Orijinalden alıntı: layk5t

öncelikle cevabın için teşekkürler benim anladığım kadarıyla 2. döngü(yani 3. satır) b degişkeni 2 olmadan üsteki döngü çalışmaz bu yüzden 2. döngü çalışmayı durdurana kadar ilk döngü sürekli 0 değerini basacak taki 2. döngü b degişkeni 2 basıp döngü durunca ilk döngü bir değerini basıp 2. döngü ise aynı şekilde devam edecek sanırım doğru anladım
Evet tamamen soyledigin sekilde. Kodu ayiklarsan(debug edersen) degiskenlere hangi degerler atandigini ve dongunun nasil dondugunu daha rahat takip edebilirsin.



L
5 yıl
Yüzbaşı
Konu Sahibi

yardımlarınız için teşekkürler yanlız "debug" bu terimi henüz bilmiyorum nasıl çalıştırabilirim


Bu mesaja 1 cevap geldi.
L
5 yıl
Yüzbaşı
Konu Sahibi

o kısmını atmayı unutmuşum




Bu mesajda bahsedilenler: @srenkenstein
S
5 yıl
Yüzbaşı

Python PDB diye arastirabilirsin. Sordugun sorularin detaylari, videolari genel olarak anlatiliyor zaten


Bu mesaja 1 cevap geldi.

Bu mesajda bahsedilenler: @layk5t
L
5 yıl
Yüzbaşı
Konu Sahibi

peki teşekkürler




Bu mesajda bahsedilenler: @srenkenstein
DH Mobil uygulaması ile devam edin. Mobil tarayıcınız ile mümkün olanların yanı sıra, birçok yeni ve faydalı özelliğe erişin. Gizle ve güncelleme çıkana kadar tekrar gösterme.