1024
Comment:
|
1035
|
Deletions are marked like this. | Additions are marked like this. |
Line 6: | Line 6: |
# 2to3: strings-are-bytes x = "hi" # 2to3: end and that would get translated to x = b"hi" |
{{{ # 2to3: strings-are-bytes x = "hi" # 2to3: end }}} and that would get translated to {{{x = b"hi"}}} |
2to3 is a tool that automatically translates 2.x code to 3.x code. The code is located at http://svn.python.org/view/sandbox/trunk/2to3. At the moment, it is principally maintained by BenjaminPeterson.
Here are some project ideas:
* Some people have expressed interest in adding directives in the source to 2to3. So you could write:
# 2to3: strings-are-bytes x = "hi" # 2to3: end
and that would get translated tox = b"hi"
* Last year there was a project to add confidence rankings to 2to3 changes. People could configure them to a certain level and deal with low confidence refactoring manually (or interactively). For some reason, the project was never finished. If you want to find more out about that, I suggest you contact the student or his mentor, Collin Winter.
* Some people have expressed an interest in seeing a 3to2 tool which would make 3.x code valid for ~2.5. This is in the nonexistent stage, so you'd have to start writing fixers from scratch.