从Python标准库强制导入模块而不是PYTHONPATH默认值

时间:2010-06-01 17:56:27

标签: python import module standard-library pythonpath

我的PYTHONPATH中的一个目录中有一个自定义模块,其名称与其中一个标准库模块相同,因此当我import module_name时,该模块会被加载。如果我想使用原始的标准库模块,有没有办法强制Python从标准库而不是从PYTHONPATH目录导入,除了重命名自定义模块并更改每个引用以指向新名称?

3 个答案:

答案 0 :(得分:12)

理想的解决方案是将模块重命名为非标准库中的模块。

如果您使用的是Python 2.5 +,还可以switch absolute imports on

from __future__ import absolute_import

答案 1 :(得分:10)

别。

如果您不小心选择了标准库模块名称,请更改模块名称以结束冲突。

答案 2 :(得分:5)

您可以使用imp模块选择要导入的模块:

import imp
mymodule = imp.load_module(name, file, pathname, description)