在PyCharm中将python 2代码转换为3

时间:2016-06-17 22:22:43

标签: python git python-2.7 python-3.x pycharm

我在python 2代码中有一个大型ML项目,我刚开始使用PyCharm作为IDE。我目前正在使用WinPython 3.4,我最好喜欢在python 3中做所有事情,而不是继续使用遗产2.当我从git克隆项目时,pycharm中的弹出窗口出现了类似的内容。将代码从2转换为3,但我并没有真正考虑它并退出它。我该如何转换它?

7 个答案:

答案 0 :(得分:44)

我在 Pycharm IDE中找到了一种方法,可以使用2to3工具将文件从v2转换为v3。

我在windows环境中应用了pycharm社区版v 2016.2.3。

  • 点击状态栏中的终端 现在,您处于shell命令中,位于项目的根目录中。
  • 输入命令(转换myfile.py):

    2to3 myfile.py -w

该工具修改了文件的代码,IDE会反映出更改。

要修改文件夹中的所有文件,请键入命令

2to3 . -w

选项-w实际写入更改。 有关详细信息,请写:

  2to3 -h

答案 1 :(得分:3)

转到命令行中存在python2script.py的文件夹,

然后执行命令:

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

你可以看到你的python2scipt.py已经更新。

答案 2 :(得分:1)

python 2.X.X转python 3.X.X的两种方法

  1. 使用网络应用程序

我开发了一个 Web 应用程序来将 python 2.x.x 代码转换为 python 3.x.x。 这是Automatic Python 2 to 3 converter

注意:这个网络应用是免费的,并且使用这个 2to3 python 库。


  1. 使用 2to3 库,阅读doc here

安装 2to3 库

pip install 2to3 

转换 myfile.py

2to3 myfile.py 

这表示创建一个包含 Python 3 代码的新文件。

如果你想覆盖 myfile.py 使用 -w 参数,如 2to3 myfile.py -w。阅读文档了解更多参数。

答案 3 :(得分:0)

Python中包含script,通常位于[Python Root]/Tools/Scripts/2to3.py。您可以在python文件(或python文件的目录)上运行该脚本,它将处理大量的转换,至少对于标准库中的更改。

如果您的项目使用其他第三方库,则会变得更复杂一些。对于在2到3过渡期间更改的API,它可能是API,而2to3.py脚本将不知道这些api更改。最好的办法是运行转换脚本,然后手动进行所需的任何其他更改。

答案 4 :(得分:0)

在此之前我会首先保存Python 2文件的备份副本。

然后,您可以尝试使用“2to3”自动Python 2到3代码转换工具转换代码,该工具通过标准库内置到Python中。 有关使用的详细信息,请访问: https://docs.python.org/2/library/2to3.html#

您还可以选择两种工具来自动移植代码:现代化和未来化。在下面查看它们。

现代化 - > https://python-modernize.readthedocs.io/en/latest/

Futurize - > http://python-future.org/automatic_conversion.html

就Pycharm而言,我还没有看到/不知道IDE中将代码从Python 2转换为Python 3的任何专用工具。我会坚持使用上面的3个工具。

祝你好运!

答案 5 :(得分:0)

为了将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是您要转换的文件。

答案 6 :(得分:0)

您可以使用这个免费的在线工具快速转换几个文件

https://python2to3.com/