Я получаю сообщение об ошибке "Модуль не найден" при запуске кода Python с терминала.
Моя структура проекта:
Project
../py_configs
__init__.py
conf.py
../src
check.py
Чтобы автоматически добавить путь к модулю в PATH:
py_configs/__init__.py
import os
import sys
path = os.path.join((os.path.dirname(__file__))).replace('\\', '/')
sys.path.extend([path.replace("/","\\"),path])
src/check.py
from py_configs import conf
Ошибка
Terminal - src directorty: python -m check
Traceback (most recent call last):
File "C:\Users\admin\AppData\Local\Continuum\anaconda3\Lib\runpy.py", line 193, in _run_module_as_main
"__main__", mod_spec)
File "C:\Users\admin\AppData\Local\Continuum\anaconda3\Lib\runpy.py", line 85, in _run_code
exec(code, run_globals)
File "C:\Users\admin\PycharmProjects\ExperimentProject\src\check.py", line 1, in <module>
from py_configs import conf
ModuleNotFoundError: No module named 'py_configs'
relative import
? Попробуйте использовать это для поиска. Отдельно: понимаете ли вы концептуально, как этиsys.path
изменения должны работать? Проверяли ли вы в своем коде, чтоpath
имеет ожидаемое значение, прежде чем изменятьsys.path
с его помощью? Кроме того, вы понимаете, что PATH и PYTHONPATH - это концепции, специфичные для Windows, а также ничего, с чем вы бы работали изнутри кода Python, верно? - person Karl Knechtel   schedule 10.07.2020