Python3 for döngüsü hk

Herkese merhaba,
for döngüsü ile ilgili aklıma takılan bir kaç nokta mevcut.
öncelikle
ad=“bilgisayar”
for sayac in ad:
print(sayac)
böyle bir kodun çıktısı
b
i
l
.
.
.
şeklinde ilerliyor. yani alt alta yazıyor.
normalde print fonksiyonu içerisinde sep=" " costum ayarıdır, end="" dır.
ama burada sep yine aynı şekilde (sep=" “) fakat end parametresi \n şeklindedir. bu nasıl oluyor giriltili bir şekilde print fonksiyonu yazdığımız için print fonksiyonu ben for döngüsünün içindeyim o yüzden end fonksiyonumun içi \n olmalımı diyor. :slight_smile:
2. bir konu ise
ad=“bilgisayar”
for sayac in ad:
print(sayac,end=”\n")
print(sayac,end="-")
bu kodu rica ediyorum adım adım anlatırmısınız ?
çıktısı neden aşağıdaki gibi oluyor.
b
b-i
i-l
l-g
g-i
i-s
s-a
a-y
y-a
a-r
r-

for döngüsü içerisinde print fonksiyonu sıralaması nasıl oluyor. b harfini yazıyor sonra ikinci printteki b harfinimi yazıyor yoksa önce ilk printi yapıp sonra ikinci printimi yapıyor.
kafamda deli sorular.
forum kurallarını ilhal eden bir durumda umarım bulunmamışımdır.

Doğru bildiğim kadarıyla yazmak istedim,
İlk soru için belirttiğiniz end="" parametresinin default değeri end="\n" olarak biliyorum ondan dolayı her print fonsiyonu çalıştığında işlemi bitirmeden önce yeni satıra geçip sonlanır.
İkinci soru için ise çıktı karışık gözüktüğü için kafanız karışmış olabilir fakat print methodlarını şöyle yaparsanız daha açıklayıcı olabilir aslında.
print(sayac, end="\tilk print\n")
print(sayac, end="\tikinci print\n")

2 Beğeni

Merhaba.

Hayır, end parametresinin varsayılan değeri "\n".

Böyle bir durum söz konusu değil.

Aşağıdaki iki kod eşdeğer, belki anlamanıza yardımcı olur:

ad="bilgisayar"
for sayac in ad:
    print(sayac, end="\n")
    print(sayac, end="-")
ad="bilgisayar"
for sayac in ad:
    # ikisinde de [end]'i boş bir karakter dizisi yapıp sona fazladan bir yazı eklenmesini engelliyoruz. Ekrana sadece baştaki kısım yazılacak.
    print(sayac + "\n", end="")
    print(sayac + "-", end="")

Her zamanki gibi. Sıra ile, yukarıdan aşağı.

İlk print’in çalışması tamamen bittikten sonra ikincisine geçiyor.


Bir dahakine kodlarınız burada anlatıldığı şekilde atın:

2 Beğeni

for dongulerini acalim:

print(‘b’,end=”\n")
print(‘b’,end=“-”)
print(‘i’,end=”\n")
print(‘i’,end=“-”)
print(‘l’,end=”\n")
print(‘l’,end=“-”)
.
.
.

O zaman anlasilir sanki.

1 Beğeni

Konu ile ilgili dönüşleriniz için çok teşekkür ederim.
gayet anlaşılır oldu benim için.
kodları karışık yazdığım içinde kusura bakmayın bir sonraki sefere duyurularda bulunan kurallara göre yazarım.