Папка с ошибками Pycharm для модуля

#python #pycharm

#python #pycharm

Вопрос:

Недавно я переключил компьютеры и повторно загрузил свои python и pycharm, я попытался активировать свои сохраненные проекты на новом компьютере, но столкнулся с проблемой: pycharm не распознает родительскую папку некоторых файлов и ошибочно принимает ее за модуль.

Папка называется: «Enrichment_extra_stuff», и когда я пытаюсь импортировать файл в эту папку из другого файла в этой папке, кажется, что pycharm распознает его, потому что он показывает мне все файлы внутри него, но когда я запускаю код, я получаю сообщение об ошибке ModuleNotFoundError: No module named 'Enrichment_extra_stuff' .

Также странно, когда я пытаюсь выполнить явный импорт и просто пишу import fr , чтобы импортировать файл fr, тогда pycharm выдает ошибку, но когда я запускаю его, он работает так, как должен.
Я попытался немного покопаться в pycharm, но запутался и ничего не нашел, моя версия интерпретатора python — 3.8, и я программирую на Windows, если это поможет.

Ответ №1:

Папка (или, лучше, каталог) не рассматривается как модуль, если вы не поместите __init__.py в нее файл. Это может быть пустым, или это должно быть содержимое модуля. Это Python: модуль представляет собой либо файл, либо каталог с __init__.py

Вторая часть предназначена только для Pycharm: PyCharm создается для обработки больших проектов, и часто ваша программа находится не в базовом (корневом) каталоге вашего проекта, а в одном (или нескольких) подкаталогах (например src ). Поэтому вы должны явно указать PyCharm, какие каталоги являются корневыми. Итак, перейдите на панель структуры проекта (панель с файлами, обычно с левой стороны), перейдите в свой «корневой» каталог и щелкните правой кнопкой мыши на вашем базовом исходном каталоге: во всплывающем меню выберите Пометить каталог как, а затем выберите Исходный корень.

Комментарии:

1. Что касается первой части, папка с именем: «Enrichment_extra_stuff» не содержит файла с именем __init__.py . Он содержит папку с именем: __ pycache __ , если это поможет. Что касается второй части, спасибо, теперь, если я попытаюсь выполнить import tr из другого файла внутри папки, он распознает этот файл.

2. Вы должны создать __init__.py . Это ваш файл модуля. — Примечание: PyCharm — это продвинутая среда разработки. Возможно, вы хотите начать с редакторов IDLE (входит в состав python) или spyder, чтобы выучить Python, иначе вы можете запутаться в том, что требуется PyCharm, и в чем проблемы Python.

3. Я добавил вызываемый файл python __init__ в папку. Он по-прежнему не работает. И, кстати, я уже изучил Python.