Originally reported by: Sebastian Bank (Bitbucket: xflr6, GitHub: xflr6)
Under PY2, iterkeys, itervalues, and iteritems already return an iterator, e.g.:
python
>>> spam = {}.iterkeys()
>>> assert iter(spam) is spam
So their PY2-implementation in six
python
def iterkeys(d, **kw):
return iter(d.iterkeys(**kw))
def itervalues(d, **kw):
return iter(d.itervalues(**kw))
def iteritems(d, **kw):
return iter(d.iteritems(**kw))
def iterlists(d, **kw):
return iter(d.iterlists(**kw))
can be simplified to
python
def iterkeys(d, **kw):
return d.iterkeys(**kw)
def itervalues(d, **kw):
return d.itervalues(**kw)
def iteritems(d, **kw):
return d.iteritems(**kw)
def iterlists(d, **kw):
return d.iterlists(**kw)
Also, I think, it would be nice if the documentation for iterkeys could have an extra note suggesting to simply use iter(dictionary) or for key in dictionary instead of iterkeys(dictionary).
- Bitbucket: https://bitbucket.org/gutworth/six/issue/121
该提问来源于开源项目:benjaminp/six