- PEP 3106: dict.iterkeys(), .iteritems(), .itervalues() are now gone;

and .keys(), .items(), .values() return dict views.

The dict views aren't fully functional yet; in particular, they can't
be compared to sets yet.  but they are useful as "iterator wells".

There are still 27 failing unit tests; I expect that many of these
have fairly trivial fixes, but there are so many, I could use help.
This commit is contained in:
Guido van Rossum 2007-02-11 06:12:03 +00:00
parent 4e66dfcdc4
commit cc2b016125
73 changed files with 317 additions and 272 deletions

View file

@ -1337,6 +1337,6 @@ class Yield(Node):
def __repr__(self):
return "Yield(%s)" % (repr(self.value),)
for name, obj in globals().items():
for name, obj in list(globals().items()):
if isinstance(obj, type) and issubclass(obj, Node):
nodes[name.lower()] = obj

View file

@ -18,7 +18,7 @@ class Set:
def add(self, elt):
self.elts[elt] = elt
def elements(self):
return self.elts.keys()
return list(self.elts.keys())
def has_elt(self, elt):
return elt in self.elts
def remove(self, elt):

View file

@ -504,7 +504,7 @@ class PyFlowGraph(FlowGraph):
if name in cells]
for name in self.cellvars:
del cells[name]
self.cellvars = self.cellvars + cells.keys()
self.cellvars = self.cellvars + list(cells.keys())
self.closure = self.cellvars + self.freevars
def _lookupName(self, name, list):
@ -573,7 +573,7 @@ class PyFlowGraph(FlowGraph):
# similarly for other opcodes...
for name, obj in locals().items():
for name, obj in list(locals().items()):
if name[:9] == "_convert_":
opname = name[9:]
_converters[opname] = obj