我最近使用Django1.6b1將Python 2.7中的django應用程序移植到Python 3.3。Python導入語句無法按預期工作3.3
我的導入語句不再適用於自定義模塊導入(User,views ...),我必須在這些導入之前添加一個點。爲什麼?
實施例:
import EmailUser #worked with python 2.7 but doesn't work with 3.3
import .EmailUser #works
我最近使用Django1.6b1將Python 2.7中的django應用程序移植到Python 3.3。Python導入語句無法按預期工作3.3
我的導入語句不再適用於自定義模塊導入(User,views ...),我必須在這些導入之前添加一個點。爲什麼?
實施例:
import EmailUser #worked with python 2.7 but doesn't work with 3.3
import .EmailUser #works
這是因爲「絕對進口」,也就是不是從一開始的進口。是絕對的,必須在模塊路徑中找到。在Python 2.6中,您可以通過執行文件逐個打開此文件
from __future__ import absolute_import
謝謝:D我不知道。 – Depado
感謝您的解釋。幫了我很多。 – Depado