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

作者: 果子_先生 | 来源:发表于2018-03-22 16:36 被阅读226次

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

    image

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

    有没有办法一键转换呢?

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

    image

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

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

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

    Windows Registry Editor Version 5.00  
     [HKEY_CLASSES_ROOT\Python.File\Shell\editwithidle\shell\2to3\command]  
    @="cmd /c C:\\Users\\Administrator\\AppData\\Local\\Programs\\Python\\Python36-32\\Tools\\scripts\\2to3.py -w \"%1\""  
    

    说明: C:\Users\Administrator\AppData\Local\Programs\Python\Python36-32\Tools\scripts\2to3.py 此文件路径在python安装目录,保持跟本机一致!

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

    image

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

    image

    如果想批量转换,请参考:

    用Python写一个将Python2代码转换成Python3代码的批处理工具

    相关文章

      网友评论

      • Jan_92bf:非常棒,受教了,谢谢作者
      • f994e7e42d09:如果在Ubuntu下改怎么解决内容
        果子_先生:@hyhmnn https://www.jianshu.com/p/d10801425e1c
        这个方法你试下看行不行。
        f994e7e42d09:@JackyZheng 好的谢谢啦
        果子_先生:核心就是调用python自带的2to3.py工具进行处理,Ubuntu没有接触过,可以自己写个批处理之类的。
      • 零_WYF:那如果是使用了在python3中没有的模块或者是名称有变化的模块呢?还是说只是简单语法的转化。
        果子_先生:2to3.py 是python官方提供的工具,如果它都不支持,那只能自己改了。

      本文标题:一键将Python2代码自动转化为Python3

      本文链接:https://www.haomeiwen.com/subject/wsnaqftx.html