Я использую PyCharm для проекта со следующей файловой иерархией:
И я использую main.py в PyCharm со следующими конфигурациями:
Рабочий каталог: /Users/me/longpath/project/amlproject/pca_mixtures
.
Когда я пытаюсь запустить в терминале, происходит сбой:
~/longpath/project/amlproject/pca_mixtures$ python main.py
Traceback (most recent call last):
File "main.py", line 2, in <module>
from pca_mixtures.funcs import PCAMixture
ModuleNotFoundError: No module named 'pca_mixtures'
и ничего не изменится, если я перескочу к родительской папке:
~/longpath/project/amlproject$ python pca_mixtures/main.py
Traceback (most recent call last):
File "pca_mixtures/main.py", line 2, in <module>
from pca_mixtures.funcs import PCAMixture
ModuleNotFoundError: No module named 'pca_mixtures'
Причина использования from pca_mixtures.funcs import PCAMixture
вместо from funcs import PCAMixture
была в том, что PyCharm распознал импорт, а не подчеркивал его красным, как я описал здесь . Похоже, это привело к тому, что я не смог запустить проект в терминале.
Как бы вы справились с этим? Я хочу иметь возможность запустить его в терминале, потому что вывод PyCharm не является полностью последовательным (вывод сообщений об ошибках перед выводом программы), что раздражает при отладке.