2017-10-05 109 views
0

我可以在python 3文件中編寫python 2語法並使用python 3編譯器編譯嗎?我的意思是這樣的:在python3中編寫python2代碼

我知道,通過使用future__import一個可以在Python中使用不同的Python 3個功能(例如,printexep)2.

我想知道的是我可以做的相反這個?假設我有一個打印到python2數據文件的代碼(print>> f,a)。現在我想在python3編譯器中使用相同的代碼。我可以做嗎?

+0

您可以使用try除外,以便相同的代碼可以用於Python 2和Python 3 – Harsha

+2

如果您問是否python3向後兼容,那麼答案是否定的。例如,print是python 3中的一個函數。在python 2中不是。 – RSon1234

+0

https://pypi.python.org/pypi/past/ –

回答

0
import __future__ 

是使用Python 2語法/語法編寫的Python3內置模塊。

它們要麼包含在Python2中不可用的函數,要麼覆蓋Python2版本。

擁有一個「前向端口」並沒有太大的意義,因爲Python3仍然完成了Python2所做的所有相同的事情,雖然(可以說)更好。

這與導入任何其他模塊沒有區別;它只是提供方法/類/等操作。

如果你有你自己的Python2代碼,你想在Python3中使用,最好的辦法是運行2to3 conversion tool。其實不是很難使用。我自己使用這個工具轉換了數千個腳本。