Differences between revisions 3 and 4
Revision 3 as of 2009-05-29 20:34:51
Size: 1030
Editor: d27-96-105-34
Comment:
Revision 4 as of 2009-05-29 20:36:16
Size: 1035
Editor: d27-96-105-34
Comment:
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 to

    x = 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.

2to3 (last edited 2011-03-25 09:14:31 by techtonik)

Unable to edit the page? See the FrontPage for instructions.