Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit bd40d7e

Browse files
committed
Added the new dictionary methods to the wrapper class.
1 parent 36bab7d commit bd40d7e

1 file changed

Lines changed: 16 additions & 0 deletions

File tree

Lib/UserDict.py

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,23 @@ def __len__(self): return len(self.data)
1212
def __getitem__(self, key): return self.data[key]
1313
def __setitem__(self, key, item): self.data[key] = item
1414
def __delitem__(self, key): del self.data[key]
15+
def clear(self): return self.data.clear()
16+
def copy(self):
17+
if self.__class__ is UserDict:
18+
new = UserDict()
19+
new.dict = self.data.copy()
20+
else:
21+
new = self.__class__() # XXX assumption: constructor signature
22+
for k, v in self.items():
23+
new[k] = v
24+
return new
1525
def keys(self): return self.data.keys()
1626
def items(self): return self.data.items()
1727
def values(self): return self.data.values()
1828
def has_key(self, key): return self.data.has_key(key)
29+
def update(self, other):
30+
if type(other) is type(self.data):
31+
self.data.update(other)
32+
else:
33+
for k, v in other.items():
34+
self.data[k] = v

0 commit comments

Comments
 (0)