Linux システムおよび Windows システムで Python2 コードを Python3 コード ツールに変換するためのユーザー ガイド

導入

この記事では主に、Linux システムおよび Windows システムでの Python2 コードから Python3 コードへの変換ツール 2to3.py または 2to3 コマンドの使用ガイドを紹介します。

プロジェクトのシナリオと問題の説明

Python2 の最後のバージョンは 2.7 で、2020 年に完全にサポートが終了します。環境によっては、Python2 と Python3 を同時にインストールするのが不便な場合や、Python3 を使用している環境で、Python2 はインストールしたくないが、プロジェクトのコードの一部が Python2 ベースであり、Python2 の独自コード部分を変換したい場合があります。 Python2 を Python3 実行可能コードに変換しますが、作業負荷が比較的大きいため、Python3 標準ライブラリに付属するスクリプト2to3.pyまたは命令2to3の使用方法を以下に説明します。


Windows環境では2to3.pyを使用します

2to3.pyこのスクリプトは通常、Python インタープリターとともに現在の環境の Python パスの Tools/scripts ディレクトリにインストールされます。(例: D:\Anaconda\anaconda3\Tools\scripts)
2to3.py ファイルの場所
E:\workspace\pycharm\Vera フォルダー内の Python2 に基づいて記述されたコード VeraCode.py、Aaa.py、Bbb.py、および Ccc.py をファイルとして取得します。例。

1. 単一の Python2 コードを Python3 コードに変換するには、次の手順を使用できます。

python 2to3.py E:\workspace\pycharm\Vera\VeraCode.py

命令が実行されると、VeraCode.py の Python2 構文が Python3 コードに変更されます。

2. 単一の Python2 コードを Python3 コードに変換し、元のコードをバックアップします。 利用可能な手順:

python 2to3.py -w E:\workspace\pycharm\Vera\VeraCode.py

命令が実行されると、VeraCode.py の Python2 の構文が Python3 のコードに変更され、元のコードが VeraCode.py.bak としてバックアップされます。
このうち、パラメータは-w元のコードをバックアップするもので、以下の 2to3.py コードからわかります。その他にも自分で確認できるパラメータがあります

parser.add_option("-w", "--write", action="store_true",
                      help="Write back modified files")

3. フォルダー全体内のすべての Python2 コードを Python3 コードに変換し、元のコードをバックアップします。 利用可能な手順:

python 2to3.py -w E:\workspace\pycharm\Vera

プロジェクト ディレクトリに多数の Python ファイルがある場合、それらをバックアップする必要はなく、パラメータは使用できません-w


Linux環境では2to3命令を使用します。

実は、Linux 環境でも Python がインストールされているディレクトリに、Windows と同様の 2to3.py スクリプトが存在します。場所は/usr/lib/python3.10/lib2to3main.py 関数のフォルダー内です。
ただし、Linux 環境では2to3コマンドを直接使用できます。

まず、次のコマンドを使用して、インストールされているかどうかを確認できます2to3

find /usr/local/ -name "2to3"

そうでない場合は、pip を使用してインストールできます。

pip install 2to3

インストール後、インストールが完了したかどうかを確認すると、find /usr/local/ -name "2to3"次のようにコマンドの実行結果が表示されます。

/usr/local/bin/2to3

次に、使用方法は Windows システムと同様です。
例として、/app/models/Vera フォルダーにある Python2 に基づいて記述されたコード VeraCode.py、Aaa.py、Bbb.py、および Ccc.py を取り上げます。
1. 単一の Python2 コードを Python3 コードに変換するには、次の手順を使用できます。

2to3 /app/models/Vera/VeraCode.py

命令が実行されると、VeraCode.py の Python2 構文が Python3 コードに変更されます。

2. 単一の Python2 コードを Python3 コードに変換し、元のコードをバックアップします。 利用可能な手順:

2to3 -w /app/models/Vera/VeraCode.py

命令が実行されると、VeraCode.py の Python2 の構文が Python3 のコードに変更され、元のコードが VeraCode.py.bak としてバックアップされます。

3. フォルダー全体内のすべての Python2 コードを Python3 コードに変換し、元のコードをバックアップします。 利用可能な手順:

2to3 -w /app/models/Vera

命令が実行されると、コードの変更された部分が表示されます。栗を取ります:
コード変換例


参考ブログ:

python2 コードを python3 に変換する
python2 を python3 コードに変換する

おすすめ

転載: blog.csdn.net/qq_39691492/article/details/131187314