У меня проблемы с импортом модуля в тот же каталог. По сути, вот моя организация
alex (folder)
|
|- alex (folder)
| |- __init__.py
| |- commons.py
| |- KnowledgeBase.py
|
|- test.py
в моем файле init .py, у меня есть следующие строки, чтобы упростить импорт commons & KnowledgeBase в test.py. Кажется, он работает.
from .KnowledgeBase import KnowledgeBase
from .commons import *
В моем файле KnowledgeBase.py у меня есть класс с именем KnowledgeBase.
В commons.py у меня есть различные объекты:
А затем в test.py я могу вызвать мой объекты таким образом.
import alex as al
do stuff with al.KnowledgeBase
do stuff with al.CDE
do stuff with al.TimePeriod
Что не работает сейчас.
Я вызываю в KnowledgeBase.py модуль commons.py.
import alex as al
stuff with al.CDE ...
Я получаю следующее сообщение об ошибке.
AttributeError: module 'alex' has no attribute 'CDE'
Если я делаю это традиционным способом:
import commons as AC
stuff with AC.CDE ...
Я получаю следующее сообщение об ошибке.
ModuleNotFoundError: No module named 'commons'
И если я удалите все в файле init .py, он работает, но затем я не могу использовать «легкий вызов модуля» в test.py.
Если я оставлю пустой init .py файл, в test.py, вместо простого написания
import alex
Я должен объявить весь импорт:
from alex import KnowledgeBase
from alex import commons
Пожалуйста, что я могу сделать, чтобы сохранить импорт различных python модулей в alex "simp le "и в то же время, возможность импортировать модуль из папки alex в другие модули в папке alex?
Заранее благодарю за помощь. Хорошего дня, Bests,