|
Original |
Translation |
|
1
|
|
2
|
2to3 is a Python program that reads Python 2.x source code and applies a series of *fixers* to transform it into valid Python 3.x code. The standard library contains a rich set of fixers that will handle almost all code. 2to3 supporting library :mod:`lib2to3` is, however, a flexible and generic library, so it is possible to write your own fixers for 2to3. :mod:`lib2to3` could also be adapted to custom applications in which Python code needs to be edited automatically.
|
|
|
3
|
|
|
|
4
|
2to3 will usually be installed with the Python interpreter as a script. It is also located in the :file:`Tools/scripts` directory of the Python root.
|
|
|
5
|
2to3's basic arguments are a list of files or directories to transform. The directories are to recursively traversed for Python sources.
|
|
|
6
|
Here is a sample Python 2.x source file, :file:`example.py`::
|
Voici un exemple de fichier source Python 2.x, :file:`example.py`::
|
|
7
|
def greet(name): print "Hello, {0}!".format(name) print "What's your name?" name = raw_input() greet(name)
|
def greet(name): print "Bonjour, {0}!".format(name) print "Quel est ton nom ?" name = raw_input() greet(name)
|
|
8
|
It can be converted to Python 3.x code via 2to3 on the command line::
|
Il peut être converti en Python 3.x via la commande 2to3::
|
|
9
|
|
|
|
10
|
A diff against the original source file is printed. 2to3 can also write the needed modifications right back to the source file. (A backup of the original file is made unless :option:`-n` is also given.) Writing the changes back is enabled with the :option:`-w` flag::
|
|