導入錯誤:沒有名為內建的模組

導入錯誤:沒有名為內建的模組

我正在將我的 python 應用程式從 python 2 移植到 python 3 2to3import 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

相關內容