博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
python2代码批量转为python3代码
阅读量:4260 次
发布时间:2019-05-26

本文共 744 字,大约阅读时间需要 2 分钟。

由于python存在python2和python3两个主要的版本方向,经常会有将python2的代码转到python3的环境下运行的需求。尤其是跑一些神经网络的代码时有很多是在python2的环境下写的。在python3下运行会遇见很多不兼容,最常见的就是python3中print函数必须加()而python2中不是。一个一个修改这种错误又非常麻烦。

一个快速将python2代码批量转为python3代码的好方法

此时一种方式是再安装一个python2,比如下载anaconda对应的python2的版本,管理相关的库,运行的时候指定python2运行。不过如果是运行依赖比较多的代码可能需要在python2的环境安装许多包。

一个快速将python2代码批量转为python3代码的好方法

这里介绍一个python3自带的脚本2to3.py,可以将python2的程序自动转为python3的形式,节省了很多修改细节的时间。这个脚本在Python安装目录下Toolsscripts文件夹下,如果是利用anaconda3安装的python3,就在anaconda3/Tools/scripts中,如下图:

一个快速将python2代码批量转为python3代码的好方法

这个文件实际是可以复制到电脑任何位置使用的,当然也可以就在这个位置利用cmd使用,里面的代码也很简单,只有几行:

一个快速将python2代码批量转为python3代码的好方法

使用方法也很简单,如果我需要转换某个python文件,比如E盘根目录下的test.py,只需要在命令行里输入

python 2to3.py -w E:/test.py

一个快速将python2代码批量转为python3代码的好方法

如果需要转换某个文件夹下的所有文件,例如E盘test文件夹下的所有文件,只需要在命令行里输入

python 2to3.py -w E:/test/

一个快速将python2代码批量转为python3代码的好方法

就是这么简单就可以完成python2代码像python3代码的变换,当然目前对于一些比较复杂的依赖这种方法还不能完全转换,还需要根据运行错误调整,不过已经可以节省很多的时间啦。

转载地址:http://malei.baihongyu.com/

你可能感兴趣的文章
内存泄露:AccessibilityManager
查看>>
EditText 限制输入为中文,个数为6个
查看>>
破解的一款抓包工具,debug proxy,教你怎么修改so
查看>>
iPhone5C ios10.3.3修改 Myuppy蒙娜雅痞字体 ios11的方式
查看>>
bug记录:TextView java.lang.IndexOutOfBoundsException: setSpan (-1 ... -1) starts before 0
查看>>
吐槽Kotlin
查看>>
案例: springboot 同时集成hive和mysql
查看>>
解决 Fatal error: Please read "Security" section of the manual to find out how to run mysqld as root!
查看>>
解决ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)
查看>>
解决ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
查看>>
案例: centos7 安装redis集群 版本5.0.7
查看>>
案例: centos7 离线安装nginx 版本1.17.9
查看>>
开发必备小知识
查看>>
maven 项目(一) 多项目多层级搭建配置及其优点
查看>>
maven 项目(四) spring集成springMVC开发统一接入API(准备工作:第二部分)
查看>>
来段代码提提神-Java读取config.properties文件中的key=value
查看>>
来段代码提提神-Java实现SocketServer和client链接
查看>>
Java调用数据库备份命令mysqldump
查看>>
项目经验分享--favicon.ico标签栏如何设置
查看>>
项目经验分享--今天公司网站打不开了!数据库:ERROR 1030 (HY000): Got error 28 from storage engine
查看>>