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文件

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM