碰見有些python程式是2.7版本的,發現程式中print()函式和xrange()函式需要改變,不想乙個乙個的改,所以寫了乙個程式來更改。
**:
import os
file1 = r'需要更改的程式的路徑'
file2 =
'asd.txt'
with
open
(file1,
'r+'
, encoding=
'utf-8'
)as f:
file = f.
read()
file = file.
replace
('xrange'
,'range'
) f2 =
open
(file2,
'w', encoding=
'utf-8'
) f2.
write
(file)
f2.close()
os.remove
(file1)
with
open
(file2,
'r', encoding=
'utf-8'
)as f:
for line in f.
readlines()
: a = line.
find
('print'
)if a >0:
b1 = line.
find
('t'
) b2 = line.
find
('\n'
) line = line[
:b1+1]
+'('
+ line[b1+
2:b2]
+')'
+'\n'
f2 =
open
(file1,
'a', encoding=
'utf-8'
) f2.
write
(line)
f2.close()
os.remove
(file2)
整個**就是這樣,先把程式中的xrange替換為range儲存在asd.txt檔案中,把原來的檔案刪除掉,然後把print函式加上()儲存為原檔案的路徑和名字,再把asd.txt檔案刪除掉,就完成了對程式的改變。
這個程式僅僅對range()和print()函式做出了改變,其他的並不能更改,解決了部分問題,減輕了一部分工作量。
在python的安裝目錄目錄python37\tools\scripts
下有個2to3.py
程式也能實現python2到python3的轉變。
python2 版本 與 3 版本中的區別
目錄unicode編碼 print函式print hello world 2.x版本中格式 print hello world 3.x版本中格式 2.6版本已可以支援新的print 語法 from future import print function print fish panda sep r...
python2版本異常 python的幾個錯誤
1 syntaxerror invalid syntax 這個翻譯一下就是語法錯誤。經過查詢解決了這個問題,所以總結乙個這個問題的解決方法 版本問題 因為python2和python3是不相容的,所以一些可以在python2上執行的 不一定可以在python3上執行 可以嘗試更換版本 路徑問題 記得...
切換Python2版本到Python3版本
實測系統 ubuntu16.4 debain9.0 1.ubuntu 16.04系統自帶python2.7和python3.5,而預設採用的是2.7版本,可採用如下命令檢視單當前版本號 python v2.python2.7和3.5都是預設安裝在 usr local lib python2.7 3....