Ich weiß nicht, warum das nicht funktioniert:
Ich benutze die odict Klasse von PEP 372 aber ich möchte es als eine __dict__
Mitglied, d.h.:
class Bag(object):
def __init__(self):
self.__dict__ = odict()
Aber aus irgendeinem Grund erhalte ich merkwürdige Ergebnisse. Dies funktioniert:
>>> b = Bag()
>>> b.apple = 1
>>> b.apple
1
>>> b.banana = 2
>>> b.banana
2
Aber der Versuch, auf das eigentliche Wörterbuch zuzugreifen, funktioniert nicht:
>>> b.__dict__.items()
[]
>>> b.__dict__
odict.odict([])
Und es wird noch merkwürdiger:
>>> b.__dict__['tomato'] = 3
>>> b.tomato
3
>>> b.__dict__
odict.odict([('tomato', 3)])
Ich komme mir sehr dumm vor. Können Sie mir helfen?