python模块之lib2to3(py2转py3自动化工具)

# -*- coding: utf-8 -*-
#python 27
#xiaodeng
#python模块之lib2to3(py2转py3自动化工具)
#http://tieba.baidu.com/p/3939904893



#操作步骤:
1、需要转换test.py文件为py3代码
#test.py文件放置在Scripts目录下,如果test.py文件不放置在Scripts目录下则 -w后面写完整的路径
#如:
C:\python27\Tools\Scripts>2to3.py -w C:\Python27\Tools\test.py


2、打开windows下的cmd命令符窗口,将命令符定位到需要转换的脚本下
#2to3.py文件在C:\Python27\Tools\Scripts目录下
第一条命令:
cd C:\Python27\Tools\Scripts


3、再下列命令
输入:
第二条命令:2to3.py -w test.py#(相对路径)
第二条命令:2to3.py -w C:\Python27\Tools\test.py#(带绝对路径)


4、结果:
在Scripts目录下生成新的test.py(py3)文件,同时生成bak后缀的文件,会直接在cmd窗口中显示修改处的情况
'''
C:\Python27\Tools\Scripts>2to3.py -w C:\Python27\Tools\test.py
RefactoringTool: Skipping optional fixer: buffer
RefactoringTool: Skipping optional fixer: idioms
RefactoringTool: Skipping optional fixer: set_literal
RefactoringTool: Skipping optional fixer: ws_comma
RefactoringTool: Refactored C:\Python27\Tools\test.py
--- C:\Python27\Tools\test.py   (original)
+++ C:\Python27\Tools\test.py   (refactored)
@@ -27,8 +27,8 @@
         server.sendmail(user,to,msg.as_string())
         server.close()
         return True
-    except Exception, e:
-        print e
+    except Exception as e:
+        print(e)
         return False

 #18682293026
@@ -47,6 +47,6 @@
     '''
     #调用函数发送邮件
     if send_mail(user,password,To,sub,content):
-        print "发送成功"
+        print("发送成功")
     else:
-        print "发送失败"
+        print("发送失败")
RefactoringTool: Files that were modified:
RefactoringTool: C:\Python27\Tools\test.py

C:\Python27\Tools\Scripts>
'''



#注意:2to3.py -w test.py说明
-w:改动内容,重写入原文件,--write-unchanged-files
-n:不想生成bak文件

 

posted @ 2015-11-21 17:32  Xiao|Deng  阅读(4754)  评论(0编辑  收藏  举报