我最近使用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