Arama butonu
Bu konudaki kullanıcılar: 1 misafir
5
Cevap
250
Tıklama
0
Öne Çıkarma
Java for-each vs Python for
M
9 yıl
Teğmen
Konu Sahibi

Arkadaşlar python a yeni başladım ve çok azıcık da java öğrendiydim.(Aslında programlamada daha çok çok yeniyim)

Javada for-each döngüsü ile pythondaki for döngüsünün mantığının aynı olduğunu düşünüyorum.İkisi de koleksiyondan değerleri tek tek inceliyor gibi.

Javadaki for-each ile pythondaki for döngüsünün bi farkı var mıdır?

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



B
9 yıl
Çavuş

benim bildigim for'i kac kere dondurecegin sana bagli fakat foreach de ise kac tane veri varsa ona gore doner.
performans yonunu falan bahsetmedim


Bu mesaja 1 cevap geldi.
M
9 yıl
Teğmen
Konu Sahibi

quote:

Orijinalden alıntı: biggie0344

benim bildigim for'i kac kere dondurecegin sana bagli fakat foreach de ise kac tane veri varsa ona gore doner.
performans yonunu falan bahsetmedim

Javadaki for-eachde de pythondaki for döngüsünde de koleksiyondaki miktarına göre sürüyor orasını biliyorum hocam.

Pythonda aynı for tanımlamasıyla range() methodu ile normal C,Java daki gibi düz for döngüsü şeklinde de oluyor.Yani özel olarak bi fark var mı ben tam anlayamadım hocam :(


Bu mesaja 1 cevap geldi.
B
9 yıl
Çavuş

ozel olarak bir fark yok. ben python da for C# ve php de foreach kullaniyorum.

tabi gercekten foreach istiyorsan (hani eskiden beri kullaniyorum ismi foreach olsun diyorsan).
kendine kucuk bir function yazarsin soyle:

def foreach(function, var):
for element in var:
function(element)


Bu mesaja 1 cevap geldi.
M
9 yıl
Teğmen
Konu Sahibi

quote:

Orijinalden alıntı: biggie0344

ozel olarak bir fark yok. ben python da for C# ve php de foreach kullaniyorum.

tabi gercekten foreach istiyorsan (hani eskiden beri kullaniyorum ismi foreach olsun diyorsan).
kendine kucuk bir function yazarsin soyle:

def foreach(function, var):
for element in var:
function(element)

Şimdi daha iyi oturdu hocam.Çok sağolasın


Bu mesaja 1 cevap geldi.
X
9 yıl
Yüzbaşı

Python'da foreach işlevi için ek methodlar oluşturmanıza gerek yok.

map metodu var. O lambda ile çok anlamı oluyor ancak çok komplike geldiyse enumerate metodu var for içerisinde. Aslında bu metod direkt iterable olduğu için bunu kullanmanız range ya da

for i in a gibi kullanmanızdan daha da anlamlı olabilir. Tam olarak her şeyin belirli olacağı noktalar varsa

for (i, elma) in enumerate(elmalar):
print(i, elma)


Direkt olarak bir foreach işlevi gören yapı yok fakat listeler ve dictionary kavramlarına bakarsan oradan alabileceğin bazı yardımcı metodlar olduğunu göreceksin.

map konusuna örnek vermedim map,reduce,lambda gibi kavramlara aşina değilsen zorlanabilirsin diye.



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.