FishHookБанда четырёх описывает паттерны через агрегацию
Имена, дружище, имена!
https://www.ozon.ru/context/detail/id/2457392/
FishHook
На базе питоньего dict нужно реализовать классы DefaultDict
>>> class DefaultDict: ... ... def __init__(self, dct, t): ... self.dct = dct ... self.t = t ... ... def __setitem__(self, k, v): ... self.dct[k] = v ... ... def __getitem__(self, k): ... if self.t is int: ... return self.dct.get(k, 0) ... elif self.t is str: ... return self.dct.get(k, '') ... >>> d = DefaultDict({}, int) >>> d['x'] = 1 >>> d['x'] 1 >>> d['y'] 0 >>>