diff options
| author | Scott Gasch <[email protected]> | 2021-09-27 09:06:50 -0700 |
|---|---|---|
| committer | Scott Gasch <[email protected]> | 2021-09-27 09:06:50 -0700 |
| commit | 0bc6e4312cad0f997751739e750954ac39dfa6cc (patch) | |
| tree | d82dacb5d2878f3c9d5878734ad5700dc63e47b6 /bidict.py | |
| parent | 37d09d6ac30c8c66477149b7c73139c3e6782468 (diff) | |
Move collections into collect space
Diffstat (limited to 'bidict.py')
| -rw-r--r-- | bidict.py | 20 |
1 files changed, 0 insertions, 20 deletions
diff --git a/bidict.py b/bidict.py deleted file mode 100644 index 5ba3fc3..0000000 --- a/bidict.py +++ /dev/null @@ -1,20 +0,0 @@ -#!/usr/bin/env python3 - -class bidict(dict): - def __init__(self, *args, **kwargs): - super(bidict, self).__init__(*args, **kwargs) - self.inverse = {} - for key, value in self.items(): - self.inverse.setdefault(value, []).append(key) - - def __setitem__(self, key, value): - if key in self: - self.inverse[self[key]].remove(key) - super(bidict, self).__setitem__(key, value) - self.inverse.setdefault(value, []).append(key) - - def __delitem__(self, key): - self.inverse.setdefault(self[key], []).remove(key) - if self[key] in self.inverse and not self.inverse[self[key]]: - del self.inverse[self[key]] - super(bidict, self).__delitem__(key) |
