Seite 1 von 1

variablen-Namen verändern

Verfasst: Dienstag 25. Mai 2004, 13:22
von waltix
hi,
ich brauche dringend eure Hilfe :
In einer for-schleife gibt es einen Variablennamen, der bei jedem Durchlauf geändert werden soll, da jedesmal ein anderer Wert auch in eine andere Variable gespeichert wird. Da ich nicht weiß wie viele Variablen ich benötige, wollte ich den Variablennamen einfach "hochzählen". Dazu lasse ich i bei jedem Durchlauf hochzählen und will nun den Variablennamen mit i "verknüpfen". Ungefähr so :
....
i = 1
for zeile in backupini.readlines():
__if ("QUELLE" in zeile and "/" in zeile):
______findquelle = string.split(zeile)
______selectquelle+str(i) = findquelle[2]
______print selectquelle+str(i)
______i = i+1
....
Geht so natürlich nicht.
Hat jemand eine Lösung ???
Vielen Dank vorab !!!
waltix

Re: variablen-Namen verändern

Verfasst: Dienstag 25. Mai 2004, 15:14
von joerg
Hallo waltix,

Ich würde an der Stelle unbedingt mit einer Liste oder einem Dictionary arbeiten, die sind doch genau dafür da, eine vorher unbekannte Zahl von Werten aufzunehmen!

Wenn es wirklich Einzelvariablen sein müssen, kann sowas helfen:
exec('selectquelle%d = "%s"' % (i, findquelle[2]))

Damit bastelst Du dir eine Anweisung als String zusammen, die dann ausgeführt wird. Ist aber unschön!

Jörg

Verfasst: Dienstag 25. Mai 2004, 16:51
von Dookie
Hi joerg,

Code: Alles auswählen

selectquelle = []
for zeile in backupini:
    if "QUELLE" in zeile and "/" in zeile:
        findquelle = zeile.split()
        selectquelle.append(findquelle[2])
in der Liste selectquelle sind dann nacheinander die entsprechenden Werte aus der Datei.


Gruß

Dookie

P.S.: du kannst Sourcecode in [code]...[/code] einschließen, dann bleiben die Einrückungen erhalten, dazu gibts auch einen Button oben über dem Engabefeld für dein Posting.

Verfasst: Mittwoch 26. Mai 2004, 12:27
von waltix
Vielen Dank
Hat wunderbar geklappt !
Python gefällt mir immer mehr - einfach genial !!
mfg
waltix :P