2to3 Command Examples
Automated Python 2 to 3 code conversion. This module has been deprecated since 3.11 and has been removed since 3.13. For reference, see: https://github.com/python/cpython/blob/8d42e2d915c3096e7eac1c649751d1da567bb7c3/Doc/whatsnew/3.13.rst?plain=1#L188. More information: https://manned.org/2to3.
- Display the changes that would be performed without performing them (dry-run):
2to3 {{path/to/file.py}}
- Convert a Python 2 file to Python 3:
2to3 --write {{path/to/file.py}}
- Convert specific Python 2 language features to Python 3:
2to3 --write {{path/to/file.py}} --fix {{raw_input}} --fix {{print}}
- Convert all Python 2 language features except the specified ones to Python 3:
2to3 --write {{path/to/file.py}} --nofix {{has_key}} --nofix {{isinstance}}
- List all available language features that can be converted from Python 2 to Python 3:
2to3 --list-fixes
- Convert all Python 2 files in a directory to Python 3:
2to3 --output-dir {{path/to/python3_directory}} --write-unchanged-files --nobackups {{path/to/python2_directory}}
- Run 2to3 with multiple threads:
2to3 --processes {{4}} --output-dir {{path/to/python3_directory}} --write --nobackups --no-diff {{path/to/python2_directory}}