def __delattr__(self, key): # Deleting an existing item uses self._map to find the link which is # then removed by updating the links in the predecessor and successor nodes. OrderedDict.__delattr__(self, key) link_prev, link_next, key = self._map.pop(key) link_prev[1] = link_next link_next[0] = link_prev
def __delattr__(self, attr): """Implement basic functionality: Keys can be referenced as in dictionary methods, or as an attribute. """ #print '>> in __delattr__', attr # preserve OrderedDict implementation attributes if attr in self.__dict__.keys(): OrderedDict.__delattr__(self, attr) else: del(self[attr])
def __delattr__(self, attribute): """ This method deletes both key and sibling attribute. :param attribute.: Attribute. ( Object ) """ if hasattr(self, "_OrderedDict__root") and hasattr(self, "_OrderedDict__map"): if self._OrderedDict__root: OrderedDict.__delitem__(self, attribute) OrderedDict.__delattr__(self, attribute)
def __delitem__(self, key, *args, **kwargs): """ This method deletes both key and sibling attribute. :param key.: Key. ( Object ) :param \*args: Arguments. ( \* ) :param \*\*kwargs: Key / Value pairs. ( Key / Value pairs ) """ OrderedDict.__delitem__(self, key, *args, **kwargs) OrderedDict.__delattr__(self, key)
def __delattr__(self, key): """ An override of the standard __delattr_ in Python. This deletes whatever is called by k Assumptions: This one tries to treat k as an object, if that fails it treats it as a key. Source: N/A Inputs: N/A Outputs: N/A Properties Used: N/A """ # Deleting an existing item uses self._map to find the link which is # then removed by updating the links in the predecessor and successor nodes. OrderedDict.__delattr__(self,key) link_prev, link_next, key = self._map.pop(key) link_prev[1] = link_next link_next[0] = link_prev
def __delattr__(self, key): try: self.pop(key) except KeyError: OrderedDict.__delattr__(self, key)
def __delattr__(self, name): try: del self[name] except KeyError: OrderedDict.__delattr__(self, name)
def __delattr__(self, item): if self.__dict__.has_key(item): OrderedDict.__delattr__(self, item) else: self.__delitem__(item)
class Dictionary(): def __init__(self): self.__dictionary = OrderedDict() def clear(self): self.__dictionary.clear() def get_json(self): return json.dumps(self.__dictionary) def set_item(self, key, value): self.__dictionary.__setitem__(key, value) return self def values(self): return [value for value in self.__dictionary.values().__iter__()] def items(self): return self.__dictionary.items() def copy(self): self.__dictionary def constain(self, key): return key in self.get_list_of_key() def get(self, key): return self.__dictionary.get(key) def clear(self, key, default): self.__dictionary.pop(key, default) def format(self, *args, **kwargs): return self.__dictionary.__format__(*args, **kwargs) def ne(self, *args, **kwargs): return self.__dictionary.__ne__(*args, **kwargs) def repr(self, *args, **kwargs): return self.__dictionary.__repr__(*args, **kwargs) def ge(self, *args, **kwargs): return self.dictionary__ge__(*args, **kwargs) def __sizeof__(self): return self.__dictionary.__sizeof__() def setattr(self, *args, **kwargs): return self.__dictionary.__setattr__(*args, **kwargs) def dir(self): return self.__dictionary.__dir__() def le(self, *args, **kwargs): return self.__dictionary.__le__(*args, **kwargs) def delattr(self, *args, **kwargs): return self.__dictionary.__delattr__(*args, **kwargs) def hash(self, *args, **kwargs): return self.__dictionary.__hash__(*args, **kwargs) def gt(self, *args, **kwargs): return self.__dictionary.__gt__(*args, **kwargs) def eq(self, *args, **kwargs): return self.__dictionary.__eq__(*args, **kwargs) def getattribute(self, *args, **kwargs): return self.__dictionary.__getattribute__(*args, **kwargs) def str(self, *args, **kwargs): return self.__dictionary.__str__(*args, **kwargs) def reduce(self, *args, **kwargs): return self.__dictionary.__reduce__(*args, **kwargs) def reduce_ex(self, *args, **kwargs): return self.__dictionary.__reduce_ex__(*args, **kwargs) def lt(self, *args, **kwargs): return self.__dictionary.__lt__(*args, **kwargs) def keys(self): return self.get_list_of_key() def get_list_of_key(self): return [key for key in self.__dictionary.keys().__iter__()]
def __delattr__(self, name): try: self.pop(name) except KeyError: OrderedDict.__delattr__(self, name)