如何导入已导入相同文件名的python模块?

时间:2011-02-08 09:43:42

标签: python django module import

我的python模块导入有问题。 我安装了django(这可以是任何其他模块)。我用这个模块:

from django.template import Context
# other imports
# use Context

我的应用程序中有一个名为“utilities”的文件夹。在这个文件夹中我创建了一个文件“django.py” - 这个文件包含一些与django一起使用的函数。 所以我在我的模块中导入django,我得到错误: 文件“... \ utilities \ django.py”,第1行,in     来自django.template导入上下文 ImportError:没有名为template

的模块

2 个答案:

答案 0 :(得分:9)

您必须在文件顶部启用absolute imports

from __future__ import absolute_import

然后,您必须根据需要将模块中的导入转换为绝对或相对导入。

答案 1 :(得分:0)

使用名称空间,在实用程序目录中创建__init__.py,使其成为包,然后执行import utilities.django。顺便说一句,将模块命名为std库或您知道要使用的包的名称是不好的做法。你永远不知道什么时候会混淆你自己使用哪个模块。