如何在子包中导入模块?

时间:2019-07-01 19:45:39

标签: python python-import

重组代码后,我无法导入某些模块。

我的代码结构看起来类似于以下代码(NLTK和pytorch软件包都在同一个名为project的软件包中)。

    |------- NLTK_SKLEARN/
    |           |
    |           |----- model/
    |           |          |----__init__.py
    |           |          |----classifier.py
    |           |----train.py          
    |           |
    |------- pytorch/
    |           |
    |           |----- model/
    |           |          |----__init__.py
    |           |          |----classifier.py
    |           |----train.py 
    |           |  

我试图从每个培训模块中导入其子包的分类器。我已经尝试了一些方法,但pycharm似乎找到了所有模块,但是在执行时我得到了一个模块未找到错误。

ModuleNotFoundError:没有名为“ NLTK”的模块

到目前为止我尝试过的:

from NLTK_SKLEARN.model import classifier

from .model.classifier import ClassifierChunker

我将不胜感激。

1 个答案:

答案 0 :(得分:1)

Python导入区分大小写。您应该使用小写字母。 假设您尝试从__train.py__脚本中导入lib

from model.classifier import *

这会将所有定义的类拉到__train.py__运行时。

相关问题