[issue21628] 2to3 does not fix zip in some cases

RobertG report at bugs.python.org
Sun Jun 1 19:27:53 CEST 2014


New submission from RobertG:

Consider this program

def foo(a,b):
	return min(zip(a,b)[2])

print foo(range(5), (0,9,-9))

With the default options, 2to3 rewrites this as

def foo(a,b):
	return min(zip(a,b)[2])

print(foo(list(range(5)), (0,9,-9)))

For some reason, 2to3 fails to wrap the call to zip in a list, even though the 2to3 documentation says that there is a fixer which does this. Obviously, the generated code will not work in Python 3 since you can't subscript an iterator.

----------
components: 2to3 (2.x to 3.x conversion tool)
messages: 219511
nosy: RobertG
priority: normal
severity: normal
status: open
title: 2to3 does not fix zip in some cases
versions: Python 3.4

_______________________________________
Python tracker <report at bugs.python.org>
<http://bugs.python.org/issue21628>
_______________________________________


More information about the Python-bugs-list mailing list