Seite 1 von 1

__getitem__ Frage

Verfasst: Dienstag 14. April 2009, 10:07
von nemomuk
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!

Verfasst: Dienstag 14. April 2009, 10:27
von sma

Code: Alles auswählen

def __getitem__(self, key):
    return getattr(self, key)
Stefan

Verfasst: Dienstag 14. April 2009, 10:31
von nemomuk
Doch so einfach... Danke!