Instanz als refernez

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
lastesel
User
Beiträge: 22
Registriert: Freitag 13. Juni 2008, 11:39

Hallo,
ich habe folgendes Problem.
Ich habe einen Datensatz a und einen String der so def. ist: Probenname='xxx'.
Nun möchte ich den Datensatz mit Werte_xxx aufrufen können. Wie kann ich dies machen?
Danke schon mal.
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Kannst du das mal irgendwie etwas ausführen? Denn sich denke ich spreche im Namen der Allgemeinheit wenn ich "Hääää?" sage. Aus deinem Text wird nicht ganz klar was du eigentlich zu machen planst. Meine Vermutung ist, dass du vielleicht ein Dictionary suchst.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
Darii
User
Beiträge: 1177
Registriert: Donnerstag 29. November 2007, 17:02

Ich schließe mich da Leonidas voll und ganz an. :)

Eventuell suchst du aber auch: ``"Werte_" + Probenname``? Die Hauptinformation die fehlt ist, was Datensatz eigentlich sein soll.
lastesel
User
Beiträge: 22
Registriert: Freitag 13. Juni 2008, 11:39

OK.
Mein Datensatz ist vom typ dict.

Dieser heißt noch a = { }

Ich will ihn nun aber Umbenennen in Wert_xxx.

Also: Wert_xxx=a= { }

das xxx ist als String in der Form: Probenname = 'xxx' abgespeichert. (er wird aus einem Dateinahmen ausgelesen).

Problem:

ich würde das ganze gerne so schreiben:

'Wert_'+Probenname = a (wobei a das Diction. ist)

Dies wird aber so von Python nicht akzeptiert, da ja xxx eine Instanz von Probenname ist (Probenname ist ja die Referenz).
Jetzt muss ich meine Instanz ihrgendwie so umbauen das ich sie als Referenz benutzen kann, die auf mein Dict. refferenziert.
Ihrgendwie muss ich also 'Wert_'+Probenname in eine Variable umbennenen.
Denke ich zu kompliziert?
Benutzeravatar
Hyperion
Moderator
Beiträge: 7478
Registriert: Freitag 4. August 2006, 14:56
Wohnort: Hamburg
Kontaktdaten:

Dann packe doch ein dict in ein dict!

Code: Alles auswählen

was_auch_immer = {
    "Wert_xxx": {
        "a": 4
        "b": 6
# ... usw
    }
    "Wert_xxy": {
        "a": 9
        "b": -1
# ... usw
    }
}
Darii
User
Beiträge: 1177
Registriert: Donnerstag 29. November 2007, 17:02

lastesel hat geschrieben:Dies wird aber so von Python nicht akzeptiert, da ja xxx eine Instanz von Probenname ist (Probenname ist ja die Referenz).
``"xxx"`` ist keine Instanz von ``Probenname``, sondern eine Instanz von ``str``. Und ``Probenname`` ist der Name unter dem ``"xxx"`` zu erreichen ist.

Was du willst, geht mit ``eval`` aber eigentlich möchtest du, wie von Leonidas vorgeschlagen, ein dict verwenden.
Antworten