__getitem__ Frage

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
nemomuk
User
Beiträge: 862
Registriert: Dienstag 6. November 2007, 21:49

Dienstag 14. April 2009, 10:07

Hallo,

Ich habe bei SQLAlchemy eine Klasse auf eine Tabelle gemappt und würde gerne auf die einzelnen Spalten wie auf ein dict zugreifen. Jetzt muss ich nur __getitem__ und __setitem__ in meine Klasse implementieren. Nun stehe ich vor dem Problem, wie ich den key dann auch anspreche:

Code: Alles auswählen

class Test(object):
    def __init__(self, name, password):
        self.name = name
        self.password = password
        
    def __getitem__(self, key):
        return self.key
        
t = Test('name1', 'passwrotfgklflkj')
t['name']
Das gibt mir logischerweise einen AttributeError. Wie kann ich das lösen?

Danke!
sma
User
Beiträge: 3018
Registriert: Montag 19. November 2007, 19:57
Wohnort: Kiel

Dienstag 14. April 2009, 10:27

Code: Alles auswählen

def __getitem__(self, key):
    return getattr(self, key)
Stefan
nemomuk
User
Beiträge: 862
Registriert: Dienstag 6. November 2007, 21:49

Dienstag 14. April 2009, 10:31

Doch so einfach... Danke!
Antworten