web-dev-qa-db-ja.com

PyCharmでpython 2コードを3に変換する

python 2コードに大きなMLプロジェクトがあり、PyCharmをIDEとして使用し始めたばかりです。現在WinPython 3.4を使用していますが、できればpython 3レガシー2を使用し続ける代わりに)gitからプロジェクトを複製すると、pycharmのポップアップが表示されました。これは、コードを2から3に変換する行に沿ったものでしたが、終了します。どうすれば変換できますか?

22
loag

Pycharm IDEで、2to3ツールを使用してファイルをv2からv3に変換する方法を見つけました。

Pycharm comunity edition v 2016.2.3でWindows環境に適用しました。

  • ステータスバーでterminalをクリックします。これで、プロジェクトのルートにあるシェルコマンドが表示されます。
  • コマンドを入力します(myfile.pyを変換します):

    2to3 myfile.py -w

ツールはファイルのコードを変更し、IDEが変更に反映されます。

フォルダー内のすべてのファイルを変更するには、次のコマンドを入力します

2to3 . -w

実際に変更を書き込むオプション-w。詳細については以下を書いてください:

  2to3 -h
50
M.Hassan

コマンドラインでpython2script.pyが存在するフォルダーに移動し、

次に、コマンドを実行します。

python C:/python/Tools/scripts/2to3.py -w python2script.py

python2scipt.pyが更新されていることがわかります。

3
Mohan Babu

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は変換するファイルです。

1
Talat Parwez

何よりもまず、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つのツールに固執します。

がんばろう!

0
Jaxian

Pythonには script が含まれています。通常は[Python Root]/Tools/Scripts/2to3.py。そのスクリプトをpythonファイル(またはpythonファイルのディレクトリ)で実行できます。少なくとも、標準ライブラリ。

プロジェクトで他のサードパーティライブラリを使用する場合は、少し複雑になります。 2から3への移行中に変更されたAPIの可能性、および2to3.pyスクリプトは、これらのAPIの変更を認識しません。最善の策は、変換スクリプトを実行してから、必要なその他の変更を手動で行うことです。

0
Brendan Abel