Ошибка импорта, без модуля с именем xxxx

У меня есть проект, имеющий структуру

/example
../prediction
....__init__.py
....a.py

PYTHONPATH указывается на пример

теперь я открываю python в терминале и типа

import prediction

это удалось, но если я напечатаю

import prediction.a

он возвращает ошибку

ImportError: No module named 'prediction.a'; 'prediction' is not a package

почему это? не то, что уже импортировано как пакет

Ответ 1

Поведение, которое вы видите, может быть вызвано, если в вашем текущем каталоге с конфликтующим именем есть модуль (foo.py) или пакет (foo/__init__.py).

В вашем случае я подозреваю, что есть файл с именем prediction.py, и вы получаете это вместо пакета prediction в каталоге examples.