使用python3自带工具2to3.py 转换 python2.x 代码 到python3

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

本文介绍一下在windows 10 环境下如何使用这个工具:

1)首先要先安装好python3,可到官网下载https://www.python.org/

2)使用Windows 命令提示符(cmd)打开2to3.py 脚本所在位置,如下图:

C:\Users\CodeMing>cd C:\Program Files\Python 3.5\Tools\scripts

3)紧接着运行 2to3.py 脚本

C:\Program Files\Python 3.5\Tools\scripts>python 2to3.py

可以看见在python 2to3.py 后面是需要参数的,我们输入--help 可以看到所需的参数信息。

4)2to3.py 脚本可以单独转换python2.x 代码 到python3,也可以按照目录批量的转换。下面分别举例说明一下:

A  按目录转换

假设我要转换的代码所在目录在:E:\ipv6-master

那么在CMD里面输入:

C:\Program Files\Python 3.5\Tools\scripts>python 2to3.py -w E:\ipv6--master\

B 按指定代码转换

C:\Program Files\Python 3.5\Tools\scripts>python 2to3.py -w E:\ipv6--master\IPV6.py

已知问题:

1)当要转换的代码在C盘的路径下,转换会出问题。显示:拒绝访问。可能是权限问题。

参考:

1)https://docs.python.org/3.0/library/2to3.html

2)http://old.sebug.net/paper/books/dive-into-python3/porting-code-to-python-3-with-2to3.html

3)http://dipyzh.bitbucket.org/porting-code-to-python-3-with-2to3.html

原文地址:https://www.cnblogs.com/jpfss/p/9857783.html

时间: 2024-08-25 23:26:50

使用python3自带工具2to3.py 转换 python2.x 代码 到python3的相关文章

如何把Python2的代码转换为Python3的代码

如何把Python2的代码转换为Python3的代码 注: 如果对于python2和python3不熟悉的,可以参考: [整理]总结Python2(Python 2.x版本)和Python3(Python 3.x版本)之间的区别 之前有机会接触到,将Python2的代码转换为Python3的代码. 经过一番折腾,大概有了基本概念了. 现在简要整理一下,关于如何将Python 2.x的代码,转换为Python 3.x的代码. 把Python 2.x的代码转换为Python 3.x代码的方法 1.自

python2 到 python3 转换工具 2to3

windows系统下的使用方法: (1)将python安装包下的Tools/Scripts下面的2to3.py拷贝到需要转换文件目录中. (2)dos切换到需要转换的文件目录下,运行命令2to3.py test.py 可打印test.py,在python2与python3的差异. (3)dos切换到需要转换的文件目录下,运行命令2to3.py -w test.py 将test.py备份为test.py.bak文件 test.py将相应的格式及相应包改写为python3 恭喜你,python2到p

Caffe---自带工具 绘制loss和accuracy曲线

Caffe自带工具包---绘制loss和accuracy曲线 为什么要绘制loss和accuracy曲线?在训练过程中画出accuracy 和loss曲线能够更直观的观察网络训练的状态,以便更好的优化网络的训练.本文主要介绍在基于caffe框架训练网络时,利用caffe自带的工具包来绘制曲线.caffe中自带小工具: caffe-master/tools/extra/parse_log.sh, caffe-master/tools/extra/extract_seconds.py和 caffe-

Python3漏洞扫描工具 ( Python3 插件式框架 )

目录 Python3 漏洞检测工具 -- lance screenshot requirements 关键代码 usage documents README Guide Change Log TODO list Any advice or sugggestions 目录结构 Python3 漏洞检测工具 -- lance lance, a simple version of the vulnerability detection framework based on Python3. 基于Pyt

Python3之jsonpath使用和json转换

jsonpath使用和json转换 (一)JSONPath-JSON的XPath JSONPath表达式始终以与XPath表达式与XML文档结合使用的相同方式引用JSON结构.由于JSON结构通常是匿名的,并且不一定具有"根成员对象",因此JSONPath假定$分配给外部对象的抽象名称.[摘自官方文档] JSONPath表达式可以使用点号-表示法:$.store.book[0].title 括号符号:$['store']['book'][0]['title'] JSONPath允许通配

python的构建工具——setup.py文件

一.构建工具setup.py的应用场景 在安装python的相关模块和库时,我们一般使用"pip install  模块名"或者"python setup.py install",前者是在线安装,会安装该包的相关依赖包:后者是下载源码包然后在本地安装,不会安装该包的相关依赖包.所以在安装普通的python包时,利用pip工具相当简单.但是在如下场景下,使用python setup.py install会更适合需求: 在编写相关系统时,python 如何实现连同依赖包

python3 安装scrapy Exception: Traceback (most recent call last): File "/usr/lib/python3/dist-packages/pip/req/req_install.py", line 1006, in check_if_exists解决方法

错误代码: Exception: Traceback (most recent call last): File "/usr/lib/python3/dist-packages/pip/req/req_install.py", line 1006, in check_if_exists self.satisfied_by = pkg_resources.get_distribution(str(no_marker)) File "/usr/share/python-wheel

解决Delphi7的自带的UTF-8编码转换函数BUG

Delphi7及其以下版本的 VCL 只支持 Ansi, 所以... WideString 与 UTF8String (定义与 AnsiString 相同) 并没有办法正确的在 VCL 中显示 Delphi7自带的utf-8转换函数遇到其无法识别的字符串就返回空. 用以下转换函数可以解决这个bug unit util_utf8; interface uses Windows; type UTF8String = AnsiString; function AnsiToWide(const S: A

如何利用 Visual Studio 自带工具提高开发效率

原文:如何利用 Visual Studio 自带工具提高开发效率 Visual Stuido 是一款强大的Windows 平台集成开发工具,你是否好好地利用了它呢? 显示行号 有些时候(比如错误定位)的时候,显示行号将有利于我们进行快速定位. 如何显示 1. 工具 / 选项 / 文本编辑器 -> 选择对应的语言 2. 勾选 "行号" 使用书签 和平常意义的书签类似,当我们希望在日后某一时刻快速定位到一处代码时使用.比如在项目例会上,你需要演示本周你所做的一些改进,在开会前可以事先