Python在运行时导入错误

时间:2017-03-04 19:53:59

标签: python python-import importerror

我有一个包含以下包结构的项目。

Trial
├── README.md
├── setup.py
└── trial
   ├── __init__.py
   ├── data
   │      └── cfg
   │         ├── project.properties
   │         ├── routes.json
   │         ├── springconfig.xml
   │         └── validators.xml
   ├── main.py
   └── taskqueue
       ├── __init__.py
       ├── manager.py
       ├── manager.pyc
       └── worker.py

现在我正在使用Pycharm IDE,它会检查错误的导入。 在manager.py模块中,我有一个导入

 from trial.taskqueue.worker import Worker

现在我的IDE并没有抱怨任何导入错误,但当我通过执行

从试用目录运行我的应用程序时
 python main.py run

我收到导入错误

 from trial.taskqueue.worker import Worker
 ImportError: No module named trial.taskqueue.worker

为什么导入不起作用,项目结构是否有任何错误?

2 个答案:

答案 0 :(得分:1)

manager.py似乎与worker.py位于同一目录中,因此将其导入如下

from worker import Worker

应该适合你

答案 1 :(得分:0)

你有没有尝试过:

    from taskqueue.worker import Worker

因为没有"试验" dir,一旦你在里面工作"试用" !