[Tutor] Easier way to use 2to3?
Ken Green
beachkidken at gmail.com
Sat Aug 24 09:07:58 EDT 2019
On 8/23/19 9:10 PM, Cameron Simpson wrote:
> On 23Aug2019 20:49, Ken Green <beachkidken at gmail.com> wrote:
>> It took me a while to figure out how to do a 2to3
>> as shown in several examples I seen, [...]
>
> Documentation beats examples.
>
> [...]
>> When I ran 2to3 sample.py in a Python3 directory,
>> I get the following:
>>
>> ken at kengreen:~/Python3$ 2to3 sample.py
> [... noise, diff, original file unchanged ...]
>> Huh, what? The original program was not changed! I was
>> expecting a changed Python2 program to be compatible with
>> Python3. I ended up making the needed changes line-by-line
>> to my original program. What gives?
>
> The default mode does no damage to files. But if we ask 2to3 for help:
>
> [~]fleet*> 2to3 --help
> Usage: 2to3 [options] file|dir ...
>
> Options:
> -h, --help show this help message and exit
> -d, --doctests_only Fix up doctests only
> -f FIX, --fix=FIX Each FIX specifies a transformation;
> default: all
> -j PROCESSES, --processes=PROCESSES
> Run 2to3 concurrently
> -x NOFIX, --nofix=NOFIX
> Prevent a transformation from being run
> -l, --list-fixes List available transformations
> -p, --print-function Modify the grammar so that print() is a
> function
> -v, --verbose More verbose logging
> --no-diffs Don't show diffs of the refactoring
> -w, --write Write back modified files
> -n, --nobackups Don't write backups for modified files
> -o OUTPUT_DIR, --output-dir=OUTPUT_DIR
> Put output files in this directory instead of
> overwriting the input files. Requires -n.
> -W, --write-unchanged-files
> Also write files even if no changes were
> required
> (useful with --output-dir); implies -w.
> --add-suffix=ADD_SUFFIX
> Append this string to all output
> filenames. Requires
> -n if non-empty. ex: --add-suffix='3' will
> generate
> .py3 files.
>
> So try the -w option.
>
> Cheers,
> Cameron Simpson <cs at cskk.id.au>
>
Thanks ever so much for pointing me in the right direction.
Much appreciated.
Ken
More information about the Tutor
mailing list