python 2コードに大きなMLプロジェクトがあり、PyCharmをIDEとして使用し始めたばかりです。現在WinPython 3.4を使用していますが、できればpython 3レガシー2を使用し続ける代わりに)gitからプロジェクトを複製すると、pycharmのポップアップが表示されました。これは、コードを2から3に変換する行に沿ったものでしたが、終了します。どうすれば変換できますか?
Pycharm IDEで、2to3ツールを使用してファイルをv2からv3に変換する方法を見つけました。
Pycharm comunity edition v 2016.2.3でWindows環境に適用しました。
コマンドを入力します(myfile.pyを変換します):
2to3 myfile.py -w
ツールはファイルのコードを変更し、IDEが変更に反映されます。
フォルダー内のすべてのファイルを変更するには、次のコマンドを入力します
2to3 . -w
実際に変更を書き込むオプション-w。詳細については以下を書いてください:
2to3 -h
コマンドラインでpython2script.pyが存在するフォルダーに移動し、
次に、コマンドを実行します。
python C:/python/Tools/scripts/2to3.py -w python2script.py
python2scipt.pyが更新されていることがわかります。
pythonスクリプトをバージョン2からバージョン3に変換するには、2to3ユーティリティを使用できます。
Linuxターミナルの場合-
$ 2to3 my_file.py # shows output only on terminal
または
$ 2to3 -w my_file.py # overwrites the file with python-3 code
ここで、my_file.pyは変換するファイルです。
何よりもまず、Python 2ファイルのバックアップコピーを保存します。
次に、標準ライブラリを介してPythonに組み込まれている「2to3」自動化Python 2から3コード変換ツールを使用して、コードの変換を試みることができます。詳細使用方法についてはこちらをご覧ください: https://docs.python.org/2/library/2to3.html#
また、コードを自動的に移植する2つのツール(ModernizeとFuturize)から選択することもできます。以下をご覧ください。
Modernize-> https://python-modernize.readthedocs.io/en/latest/
Futurize-> http://python-future.org/automatic_conversion.html
Pycharmに関しては、IDEからコードをPython 2にPython 3.上記の3つのツールに固執します。
がんばろう!
Pythonには script が含まれています。通常は[Python Root]/Tools/Scripts/2to3.py
。そのスクリプトをpythonファイル(またはpythonファイルのディレクトリ)で実行できます。少なくとも、標準ライブラリ。
プロジェクトで他のサードパーティライブラリを使用する場合は、少し複雑になります。 2から3への移行中に変更されたAPIの可能性、および2to3.py
スクリプトは、これらのAPIの変更を認識しません。最善の策は、変換スクリプトを実行してから、必要なその他の変更を手動で行うことです。