/ Published in: Python
Expand |
Embed | Plain Text
Copy this code and paste it in your HTML
"""How to create a custom mappable container (dictionary-like) type in Python.""" from UserDict import DictMixin class MyDict(DictMixin): # MyDict only needs to implement getitem, setitem, delitem and keys (at a # minimum) and UserDict will provide the rest of the standard dictionary # methods based on these four. # # getitem and delitem should raise KeyError if no item exists for the given # key. getitem, setitem and delitem should raise TypeError if the given key # is of the wrong type. def __getitem__(self, key): .... def __setitem__(self, key, item): .... def __delitem__(self, key): .... def keys(self): .... # You can now use your class as if it was a dict, using the standard container # operators and dictionary methods. d = MyDict() d[key] = value d.get(key) d.clear() etc.