Ich lerne gerade Python und weiß allerdings nicht wofür die For schleife gut ist.
Kann mir das jmd. Erklären?

MfG Gast
Code: Alles auswählen
for zahl in range(0,9): # statt zahl kannst du auch irgendwas schreiben
print zahl #oder mach was anderes
Code: Alles auswählen
liste = ["eins","wurst","blabla",8,9]
for e in range(0, len(liste)): #e ist frei wählbar
print liste[e] #mach was du willst
Code: Alles auswählen
Tu mit Liste[0] etwas;
Tu mit Liste[1] etwas;
Tu mit Liste[2] etwas;
Code: Alles auswählen
for i in Liste:
Tue etwas mit i
Code: Alles auswählen
print liste[0]
print liste[1]
print liste[2]
print liste[3]
print liste[4]
print liste[5]
#.....
#macht genau das gleiche wie:
for element in range(0,len(liste)):
print liste[element]
#macht genau das gleiche wie:
for element in liste:
print element
Das meinst du doch nicht ernst, oder? Das ist doch Java-Code in Python-Form! Ich vermute sogar dass das noch langsamer ist als folgendes:knekke hat geschrieben:Code: Alles auswählen
liste = ["eins","wurst","blabla",8,9] for e in range(0, len(liste)): #e ist frei wählbar print liste[e] #mach was du willst
Code: Alles auswählen
liste = ["eins","wurst","blabla",8,9]
for e in liste: #e ist frei wählbar
print e #mach was du willst
Du hast aber schon den ganzen Beitrag von knekke gelesen, ja?Leonidas hat geschrieben: Das meinst du doch nicht ernst, oder? ...
Code: Alles auswählen
for i in range(len(liste)):
print "%i-tes Element: %s" % (i, str(liste[i])
Doch!Das meinst du doch nicht ernst, oder?
Dann hätte ich mich evtl. doch für Java entscheiden sollen, wenn ich es schon so im Blut hab (hab nie ne Java-source gesehen).Das ist doch Java-Code in Python-Form!
Seit Python-Version 2.3 (ich glaube jedenfalls 2.3) gibts enumerate(). Alle Versionen davor sind pre-enumerateknekke hat geschrieben: P.S.: Was sind pre-enumerate Python-Versionen?
Code: Alles auswählen
for i,j in enumerate(liste):
print "%i-tes Element: %s" % (i, str(j))
Es gibt auch noch die Möglichjkeit zip() zu nutzen, aber wenn dich keiner zwingt Python 2.2 zu verwenden, warum nimmt man dann nicht gleich die Features von Python 2.4. Hat unter anderem auch Performancevorteilemawe hat geschrieben:Seit Python-Version 2.3 (ich glaube jedenfalls 2.3) gibts enumerate(). Alle Versionen davor sind pre-enumerate
Ja?Leonidas hat geschrieben: Es gibt auch noch die Möglichjkeit zip() zu nutzen
Es gibt Leute die nicht immer die neuesten Versionen verwenden können, und es soll auch welche geben, die nicht immer die neuesten Features kennenLeonidas hat geschrieben: warum nimmt man dann nicht gleich die Features von Python 2.4
Eigentlich ist es mehr eine Art es zu misbrauchen, aber ich demonstriere es trotzdem mal:mawe hat geschrieben:Ja?Leonidas hat geschrieben: Es gibt auch noch die Möglichjkeit zip() zu nutzen
Code: Alles auswählen
buchstaben = ['abc', 'def', 'ghi']
for sequenz, inhalt in zip(range(len(buchstaben)), buchstaben):
print sequenz, inhalt
Für die zweiteren gibt es eine Seitemawe hat geschrieben:Es gibt Leute die nicht immer die neuesten Versionen verwenden können, und es soll auch welche geben, die nicht immer die neuesten Features kennen