python无法导入模块

时间:2013-07-31 16:43:05

标签: python import package

我使用以下软件包设置了我的程序:

-base
    ---init.py
    ---base_class.py
-test
    ---init.py
    ---test.py

当我在from base.base_class import BaseClass中执行导入语句test.py时,我在运行时遇到错误

    from base.base_class import BaseClass
ImportError: No module named base.base_class

我无法弄清楚为什么它无法导入该模块。

4 个答案:

答案 0 :(得分:6)

位于test.py的顶部添加

import sys
sys.path.append("..")

base不是路径上的文件夹...一旦你改变它,它应该工作

或将test.py放在与base相同的文件夹中。或将基地移动到路径上的某个地方

答案 1 :(得分:2)

您需要在从

导入的每个文件夹中都有一个__init__.py文件

答案 2 :(得分:1)

你必须创建一个名为" __init__.py"的文件。在python目录,然后" Python"将该目录理解为Python包。

答案 3 :(得分:1)

你可以做三件事:

init.py文件添加到每个文件夹

sys.path.append("Folder")添加到顶部

或使用imp和do;

import imp
foo = imp.load_source('filename', 'File\Directory\filename.py')

然后foo将是模块的名称,例如foo.method()