Как импортировать модули в подпакеты? - PullRequest
0 голосов
/ 01 июля 2019

После реструктуризации моего кода у меня возникают проблемы с импортом некоторых модулей.

Моя структура кода выглядит примерно так (и NLTK, и пакет pytorch находятся в одном пакете с именем project).

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

Из каждого учебного модуля я пытаюсь импортировать классификатор его подпакета. Я пробовал несколько вещей, и Pycharm, кажется, находит все модули, но во время выполнения я получаю ошибку модуля not found.

ModuleNotFoundError: Нет модуля с именем «NLTK»

Что я пробовал до сих пор:

from NLTK_SKLEARN.model import classifier

from .model.classifier import ClassifierChunker

Буду признателен за любую помощь.

1 Ответ

1 голос
/ 01 июля 2019

Импорт Python чувствителен к регистру. Вы должны работать со строчными буквами. Предполагая, что вы пытаетесь импортировать библиотеку из скрипта __train.py__

from model.classifier import *

Это приведет к тому, что все определенные классы будут переведены в среду выполнения __train.py__.

...