Я нахожу более удобным доступ к ключам с ключами как obj.foo
вместо obj['foo']
, поэтому я написал этот фрагмент:
class AttributeDict(dict):
def __getattr__(self, attr):
return self[attr]
def __setattr__(self, attr, value):
self[attr] = value
Однако я предполагаю, что должна быть какая-то причина, по которой Python не предоставляет эту функциональность из коробки. Какими были бы предостережения и ловушки доступа к ключам ключа таким образом?