mirror of
https://github.com/python/cpython.git
synced 2025-11-01 02:38:53 +00:00
SF patch #667730: More DictMixin
Sebastien Keim pointed out that iterkeys and __contains__ require their own definitions so their behavior will update when the underlying method is subclassed.
This commit is contained in:
parent
981344567f
commit
51f3f1b7dc
1 changed files with 4 additions and 2 deletions
|
|
@ -90,13 +90,15 @@ class DictMixin:
|
|||
except KeyError:
|
||||
return False
|
||||
return True
|
||||
__contains__ = has_key
|
||||
def __contains__(self, key):
|
||||
return self.has_key(key)
|
||||
|
||||
# third level takes advantage of second level definitions
|
||||
def iteritems(self):
|
||||
for k in self:
|
||||
yield (k, self[k])
|
||||
iterkeys = __iter__
|
||||
def iterkeys(self):
|
||||
return self.__iter__()
|
||||
|
||||
# fourth level uses definitions from lower levels
|
||||
def itervalues(self):
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue