一行代码自动将Python2的代码转换为Python3 - Go语言中文社区

一行代码自动将Python2的代码转换为Python3


小编写这篇文章的时候觉得好无聊,不知不觉把一篇技术博文添了很多无关元素,不想看废话的博友可直接点这里将Python2的代码转换为Python3 跳转至解决问题的地方。

前言:

我们都知道python有一个一直被诟病的毛病,python2与python3代码不兼容问题。自打开始学Python开始小编接触的就是py3,虽然也了解过py2的语法和他们的之间的差异,然而,,小编基本没用它来code过,毕竟物竞天择,跟不上时代的产物被淘汰也是迟早的事请,所以根本没考虑过让py2的代码在py3的解释器上跑或者把py2代码转换成py3这种问题。但是,出来混该面对的终究会来。

故事背景:

最近专注于毕业设计,尽管看了不少的论文还是没有比较稳妥的实现思路。

昨晚在逛csdn时看到了一份demo资源下载文件,看评论那是相当高大上的样子,便想拿过来在本地跑一跑,参考别人做的效果。

当我满怀期待的解压打开之后发现,这代码TM都老掉牙了,它诞生的时候我才刚上高中欸,更过分的是,粗略的扫描了一下代码框架,看到一行‘print xxx.xx’,天啊,,竟然是Python2写的。emmm。。。有意思。。。这都啥年代了。当时我只为我花的那11个下载积分痛心。手动改代码?光那些模块名,方法命就没耐心了,别提数不清的print,改它还不如自己写。算了认栽吧,我内心勉强平静了下来,遂把它放在一边去看别的文档。

时间不知不觉就到了11点多,女神也说她要去‘睡告告’了(方言),互道晚安之后,烦恼早已烟消云散,打算关掉电脑玩会儿手机就睡觉。

睡前躺在床上回顾着一天的经历,想到白天和女神的聊天时忍不住开心地笑了笑,我觉得自己好幸福;可想到毕设进度的时候却皱了眉头:今天的demo问题还没解决诶,无论怎样还是要用积极的态度来面对,python3.0和2.0虽然不完全兼容,但是官方总不会让以前的py2代码死翘翘吧,应该是有简便的解决方法只是我不知道罢了,不然以前那些前辈们的大项目不早就凉凉了吗?毕竟连Tensorflow2.0和1.0这种巨大改版之后的不兼容也有办法让2.0去跑1.0的代码。明天得去Python官网好好看看才行。

早上闹钟响了,习惯性的拿起手机,竟然看到了女神发来的QQ消息 ‘早睡早起身体好’ ,她今天醒得这么早欸,我赶紧回了消息,感觉浑身充满了动力:美好的一天又开始了。一切准备就绪后,打开电脑进了Python官网,虽然英语渣,尽管不是那么喜欢阅读英文文档不过看这些关键词还是问题不大,只是需要耐心慢慢看。随着滚轮的滑动,一行文字立马吸引了眼球:2to3 - Automated Python 2 to 3 code translation,看这意思就是自动将python2的代码转换成python3:
在这里插入图片描述
看到这里,果断戳了进去看说明。说实话这些官方文档可以说真的是我的最爱了,写的很明了,还有很多用法示例:
在这里插入图片描述
我以为会挺麻烦,原来这么简单,一行代码就能搞定。

2to3官网链接:
2to3 - Automated Python 2 to 3 code translation

接下来就是动手解决问题了。

步骤:

1、找到python安装路径下的‘2to3.py’文件位置,一般在安装目录的Toolsscripts下面,例如下面是在小编电脑中的位置。
在这里插入图片描述2、复制这个‘2to3.py’文件,将其拷贝到与‘python.exe’同一个目录,‘python.exe’一般在安装目录Python37_64的同级目录下,例如在小编电脑中的位置:
在这里插入图片描述3、拷贝好之后,打开cmd命令窗口,切换路径到刚才‘2to3.py’和‘python.exe’所在的目录;然后在命令行在输入如下命令:

python 2to3.py -w E:A毕业设计相关watermark.py

注意:-w参数后面的是需要转换的源代码的绝对路径

4、确认命令无误后,按下回车键,屏幕会滚动显示转换了哪些内容,滚动停止后意味着转换完成了:
在这里插入图片描述转换完成后,源代码便已经是py3的写法了,其同级目录下会多出一个.bak文件,是原来py2代码的备份文件。

这时在解释器中打开转换过的代码,那些令人烦恼的红色报错警告都消失了,看着真舒服。

版权声明:本文来源CSDN,感谢博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/qq_41320433/article/details/104574578
站方申明:本站部分内容来自社区用户分享,若涉及侵权,请联系站方删除。
  • 发表于 2020-04-18 20:44:20
  • 阅读 ( 846 )
  • 分类:

0 条评论

请先 登录 后评论

官方社群

GO教程

猜你喜欢