使用2to3.py转换python2代码到python3

几乎所有的Python 2程序都需要一些修改才能正常地运行在Python 3的环境下。为了简化这个转换过程,Python 3自带了一个叫做2to3的实用脚本(Utility Script),这个脚本会将你的Python 2程序源文件作为输入,然后自动将其转换到Python 3的形式。

通过参考使用python3自带工具2to3.py 转换 python2.x 代码 到python3这篇博客介绍的Windows下转换python2代码到python3的方法,我研究了一下在macOS下的转换方法。

由于不同系统下的文件路径是不同的,我只好就按照文件名进行了搜索,得到以下内容:
search_result
发现有两个2to3-3.6文件,看了一下路径觉得在

/Users/xjx/anaconda/bin

路径下的比较靠谱

于是在终端打开

$ cd /Users/xjx/anaconda/pkgs/python-3.6.1-2/bin
$ python 2to3-3.6

可以看见在python 2to3.py 后面是需要参数的

At least one file or directory argument required.
Use --help to show usage.

输入–help 可以看到所需的参数信息
help

2to3.py 脚本可以单独转换python2代码到python3,也可以按照目录批量的转换

  • 按目录转换
$ python 2to3-3.6 -w /Users/xjx/Downloads/a/
  • 按指定代码转换
$ python 2to3-3.6 -w /Users/xjx/Downloads/a.py

转换过程中会显示一些转换细节transfer
出现如下提示时转换成功

RefactoringTool: Files that were modified:
RefactoringTool: /Users/xjx/Downloads/a.py

可以看到,转化后的python3代码替换了原来的a.py,而原来的python2代码被保存为同目录下的a.py.bak
done

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值