Variablen Schleife ?

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
Itsjustme
User
Beiträge: 13
Registriert: Mittwoch 5. März 2008, 16:40
Wohnort: Köln
Kontaktdaten:

Hallo,
ich habe folgendes Problem.

Ich habe die variablen: u1 , u2 ... u8 .
Nun will ich diese in einer for i in range: Schleife bearbeiten also zb:

Code: Alles auswählen

for i in range(1,8):
print ui
Habe schon lange gegooglet und die sufu benutzt aber finde irgendwie nichts .

Danke schonmal!
Benutzeravatar
cofi
Python-Forum Veteran
Beiträge: 4432
Registriert: Sonntag 30. März 2008, 04:16
Wohnort: RGFybXN0YWR0

Ja es gibt eine Loesung, fuer das konkrete Problem:

Code: Alles auswählen

for i in range(1,8):
    print eval("u%d" % i")
Damit tust du dir aber keinen Gefallen, Namen dynamisch zusammenstoepseln ist keine gute Idee.
Wahrscheinlich willst eher direkt eine Liste benutzen wenn du schon Namen durchnummerierst.

Code: Alles auswählen

us = [1,2,3,4,5,6,7]
for u in us:
    print u
.robert
User
Beiträge: 274
Registriert: Mittwoch 25. April 2007, 17:59

Code: Alles auswählen

for i in (u1,u2,u3,u4,u5):
    print i
Wenn man Variablen durchnummeriert, ist das allerdings meistens ein Zeichen dafür, dass man eine Liste benutzen will...

Also

Code: Alles auswählen

ui = []

# liste befüllen
ui.append('inhalt von ui[0]')

ui.append('inhalt von ui[1]')

# etc...

# und dann
for i in ui:
    print i

Itsjustme
User
Beiträge: 13
Registriert: Mittwoch 5. März 2008, 16:40
Wohnort: Köln
Kontaktdaten:

Hallo,
danke schonmal für die schnellen Antworten!
Ja genau , ich schreibe ein Programm für einen freund das ihm 12 Ordner in bestimmte Verzeichnisse erstellt, da diese aber selten vom Namen abweichen habe ich 12 entry Felder erstellt und fand es "unschön" diese einfach untereinander immer abzuarbeiten :)
Probiere es jetzt mal schöner zu schreiben :D
Antworten