一键将 Python2 代码自动转化为 Python3

Posted 强仔

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了一键将 Python2 代码自动转化为 Python3相关的知识,希望对你有一定的参考价值。

问题

Python2 的代码直接在 Python3 环境运行的话会报错误:

技术分享图片

 

如果大量的代码,无论是批量替换,还是逐行修改都够累的,这活儿表示不能干!

 

有没有办法一键转换呢?

百度了一下发现网上的方法如下:

 

可以利用 Python 内置工具 2to3.py, 帮你自动将 Python2 的代码转换为 Python3 的代码的。这个脚本的位置在 Python 安装的根目录Python27ToolsScriptsto3.py.

 

比如我手上有个 Python2.x 的 Python 脚本:D: mp ransform.py.

 

可以通过打开命令提示符,定位之该要转换的脚本目录下,然后运行

2to3.py -w transform.py

 

如果上述不加 -w 参数,则默认只是把转换过程所应对的 diff 内容打印输出到当前窗口而已。加了 -w 就是吧改动内容,写会到原先的文件了。

 

 

觉得麻烦的有木有?这绝对不是一个程序员想干的事!

 

于是想到了通过对.py文件右键添加一个命令进行自动处理:

 

将下边面的 reg 代码复制另存为“python 2to3.reg”文件,然后双击此文件,导入到注册表。

indows Registry Editor Version 5.00
[HKEY_CLASSES_ROOTPython.FileShelleditwithidleshellto3command]
@="cmd /c C:UsersAdministratorAppDataLocalProgramsPythonPython36-32Toolsscripts2to3.py -w "%1""

 

说明:

 C:UsersAdministratorAppDataLocalProgramsPythonPython36-32Toolsscripts2to3.py 此文件路径在 python 安装目录,保持跟本机一致!

 

然后右键.py文件,发现右键菜单多了个菜单:

 

技术分享图片

 

点击运行,再看 .py 文件已经自动转换完成!

 

技术分享图片



以上是关于一键将 Python2 代码自动转化为 Python3的主要内容,如果未能解决你的问题,请参考以下文章

Python之将彩色图片批量转化为黑白图片

如何将python2的代码升级到python3

python流程图绘制?

一文揭秘测试平台中是如何将测试用例一键转化Jmeter压测脚本

python2下解决json的unicode编码问题

一键调试脚本使用手册