
我正在將我的 python 應用程式從 python 2 移植到 python 3 2to3
。
import builtins
給出錯誤為
ImportError: No module named builtins
有辦法解決這個問題嗎?
答案1
透過安裝軟體套件解決了在單獨情況下的類似錯誤future
。
sudo pip install future
目前尚不清楚您的錯誤是在執行 2to3 時發生還是在嘗試執行產生的程式碼時發生。如果是在運行 2to3 時,很可能是因為它實際上正在使用python2
(預設),因此如果您尚未安裝future
,builtins
將會遺失。同樣,如果您嘗試運行生成的程式碼,則python2
可能會出現相同的錯誤。
答案2
此2to3
工具產生僅與 Python 3 相容的程式碼。
您可能會看到這一點,因為您正在 Python 2 中執行轉換後的程式碼。
如果您希望您的程式碼與 Python 2 和 3 相容,您可以這樣做:
try:
import builtins
except ImportError:
import __builtin__ as builtins