python | Schleife index rausfinden
-
bei meiner einfacheren form der schleife gehts also nicht?
-
py schrieb:
bei meiner einfacheren form der schleife gehts also nicht?
Ich bin zwar in py nicht bewandert, aber ich nehme an, Du sollst statt
for name in names: print(name) # aktueller index?
schreiben
for index, name in enumerate(names): print(name) # aktueller index? steht in variable namens index
also nur ganz wenig aufwand und seine schleife nehmen.
bei bedarf nach dem namen zu suchen, würde zwar gehen, aber ungleich teurer sein, und was macht man, wenn der name zweimal vorkommt?
-
py schrieb:
bei meiner einfacheren form der schleife gehts also nicht?
was spricht denn gegen enumerate?
unschön, aber ohne enumerate:
i=0 for s in names: print i, names[i]; i+=1
-
mir gefällt die einfache "for name in names:" Schleife einfach sieht so schön einfach und sauber aus und ich hatte gehofft, dass ich da auch an den index kommen kann. enumerate oder index mitzählen sieht halt schon wieder komplizierter aus.
-
du kannst auch mit names.index(name) an den Index herankommen:
for name in names: print names.index(name), name
klappt aber natürlich nur, wenn jeder Name nur 1-mal vorkommt ...
-
py schrieb:
mir gefällt die einfache "for name in names:" Schleife einfach sieht so schön einfach und sauber aus und ich hatte gehofft, dass ich da auch an den index kommen kann. enumerate oder index mitzählen sieht halt schon wieder komplizierter aus.
Was bitte ist an
for i, v in enumerate(list):
kompliziert? Willst du lieber ein
for (int i=0; i<list.size(); i++)
haben? In Python bekommst du wenigtens ein Index und den Wert gleichzeitig, anders als bei anderen Sprachen, bei denen du nur ein entweder/oder hast.
-
In D geht's afaik so:
for index, name in names
-
Badestrand schrieb:
In D geht's afaik so:
for index, name in names
Jetzt kommen wieder die Leute mit ihren esoterischen Sprachen
-
abgesehen davon, dass es dasselbe ist wie enumerate.
-
DEvent schrieb:
py schrieb:
mir gefällt die einfache "for name in names:" Schleife einfach sieht so schön einfach und sauber aus und ich hatte gehofft, dass ich da auch an den index kommen kann. enumerate oder index mitzählen sieht halt schon wieder komplizierter aus.
Was bitte ist an
for i, v in enumerate(list):
kompliziert?
Lern lesen