Pythonのdict型にドットアクセスを追加する方法

Pythonのdict型にJavaScript風のドット.アクセスを追加したい場合は__getattr____setattr__を使って実装できるそうです。

>>> class myDict(dict):
...   def __init__(self, **arg):
...     super(myDict, self).__init__(**arg)
...   def __getattr__(self, key):
...     return self.get(key)
...   def __setattr__(self, key, value):
...     self.__setitem__(key, value)
...
>>> d = myDict(one=1, two=2, three=3)
>>> d.one
1
>>> d.two = 20
>>> d.two
20

より本格的に使いたい場合は、いろいろなライブラリが公開されているようなので探してみるのも良いかなと思います。

コメントを残す

メールアドレスが公開されることはありません。