python2版本程式轉python3版本

2021-09-10 07:29:28 字數 1419 閱讀 7611

碰見有些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....