summaryrefslogtreecommitdiffstats
path: root/Lib
diff options
context:
space:
mode:
Diffstat (limited to 'Lib')
-rw-r--r--Lib/_abcoll.py13
1 files changed, 13 insertions, 0 deletions
diff --git a/Lib/_abcoll.py b/Lib/_abcoll.py
index 89d4179..0519d42 100644
--- a/Lib/_abcoll.py
+++ b/Lib/_abcoll.py
@@ -345,6 +345,12 @@ class Mapping:
def values(self):
return ValuesView(self)
+ def __eq__(self, other):
+ return isinstance(other, Mapping) and \
+ dict(self.items()) == dict(other.items())
+
+ def __ne__(self, other):
+ return not (self == other)
class MappingView:
__metaclass__ = ABCMeta
@@ -453,6 +459,13 @@ class MutableMapping(Mapping):
for key, value in kwds.items():
self[key] = value
+ def setdefault(self, key, default=None):
+ try:
+ return self[key]
+ except KeyError:
+ self[key] = default
+ return default
+
MutableMapping.register(dict)