Есть ли какие-нибудь подводные камни с этим шаблоном Python?

Вот шаблон, который я собираюсь использовать:

class Dicty(dict): 
    def __init__(self): 
         self.__dict__ = self 

d = Dicty()
d.foo = 'bar' 
print d['foo']
>>> bar 
d['foo'] = 'baz'
print d.foo
>>> 'baz'

Как правило, я предпочитаю семантику доступа к атрибуту объекта, а не доступ к dict get / set, но есть некоторые обстоятельства, когда требуется доступ, подобный dict (для например, d ['foo-bar'] = 'baz' ), и я бы предпочел не использовать специальные методы установки геттеров для этих случаев, поэтому, таким образом, двойное поведение dict и object одновременно время с общими атрибутами.

Есть ли проблемы с указанным выше шаблоном?

7
задан skaffman 17 February 2011 в 10:19
поделиться