я знаю, что у проблемы, о которой я спрашиваю, тысячи вопросов и ответов, но мне нужно объяснение моей проблемы spcifi c, потому что я впервые использую код, написанный другими, и я действительно запутался в импорте , Итак: я использую Pycharm, и я извлек весь код (организованный в каталогах) непосредственно из репозитория gitLab.
это структура:
C:\users\marco\PycharmProjects\Avv
└──ads-ai
└──src
└──dataElab
└──dataprep.py
└──datamod.py
├──doc2vec
├──logger
└──log_setup.py
├──res
├──mod1.py
├──mod2.py
├──mod3.py
└──rest
└──api.py
мой стартовый скрипт - api. py, и мне нужно импортировать mod1.py туда -
, но начать писать
import mod1
выдает ошибку.
проблема также заключается в том, что на mod1, Есть другие импортные:
from logger import log_setup
from dataElab import dataprep, datamod
все импорты дают мне ошибку 'NoModuleFound'. Я попытался: -адобавить путь с sys.path.append - относительные пути (из .. import mod1), но дает мне ValueError: попытка реального импорта за пределы пакета верхнего уровня -absolute path
но ничего, у меня есть всегда ошибка «без модуля», для mod1 или для log_setup.
Я хочу использовать скрипт Pycharm, а не консоль Python. Если я проверю с помощью os.getwd () -> C: \ users \ marco \ PycharmProjects \ Avv \ ads-ai \ src \ rest (должно быть правильно).
и с sys.path - ->
['C: \ Users \ marco.onnis \ PycharmProjects \ Avvocatura2020 \ ads-ai \ src \ restAPI', 'C: \ Users \ marco.onnis \ PycharmProjects \ Avvocatura2020 ',' C: \ Users \ marco.onnis \ AppData \ Local \ Continuum \ anaconda3 \ envs \ Avvocatura2020 \ python36.zip ',' C: \ Users \ marco.onnis \ AppData \ Local \ Continuum \ anaconda3 \ envs \ Avvocatura2020 \ DLLs ',' C: \ Users \ marco.onnis \ AppData \ Local \ Continuum \ anaconda3 \ envs \ Avvocatura2020 \ lib ',' C: \ Users \ marco.onnis \ AppData \ Local \ Continuum \ anaconda3 \ envs \ Avvocatura2020 ',' C: \ Users \ marco.onnis \ AppData \ Local \ Continuum \ anaconda3 \ envs \ Avvocatura2020 \ lib \ site-packages ',' C: \ Users \ marco .onnis \ AppData \ Local \ Continuum \ anaconda3 \ envs \ Avvocatura2020 \ lib \ site-packages \ xlsxwriter-1.2.8-py3.6.egg ']
Мне очень жаль, если я спрашиваю опять такой тип вопросов, но у меня проблемы с пониманием концепции имя , main и все такое, и я не знаю, что делать в моем конкретном случае c (надеюсь, тогда я в целом пойму топи c)
спасибо большое!