跃然一笑
您可以通过子类化dict并添加所需的逻辑来创建自己的字典类型。这是一个基本示例:class TwoWayDict(dict): def __setitem__(self, key, value): # Remove any previous connections with these values if key in self: del self[key] if value in self: del self[value] dict.__setitem__(self, key, value) dict.__setitem__(self, value, key) def __delitem__(self, key): dict.__delitem__(self, self[key]) dict.__delitem__(self, key) def __len__(self): """Returns the number of connections""" return dict.__len__(self) // 2它的工作原理如下:>>> d = TwoWayDict()>>> d['foo'] = 'bar'>>> d['foo']'bar'>>> d['bar']'foo'>>> len(d)1>>> del d['foo']>>> d['bar']Traceback (most recent call last): File "<stdin>", line 7, in <module>KeyError: 'bar'我确定我没有涵盖所有情况,但这应该可以帮助您入门。