Есть вопрос по python импорт модуля - PullRequest
0 голосов
/ 20 апреля 2020

Вот мой каталог проекта в Intellij

parent/
      A/
       test.py

В test.py мне нужно импортировать модуль из родительского уровня родительской папки.

import module_needed

, но module_needed находится в эта структура:

parent_a/
        parent_b/
                py/
                  module_needed
                application/
                           parent/
                                 A/
                                  test.py

Я пытался добавить путь moduled_needed к sys.path в test.py. Но все еще не могу найти модуль. Я делаю не так? Я использую Intellij, это связано с Intellij?

1 Ответ

0 голосов
/ 20 апреля 2020

Python Система импорта довольно проста. Ищет пакеты в папках от sys.path. Вы должны добавить папку, которая содержит module_needed в данном случае py (полный путь), а не путь к самому module_needed. Если его там нет, вы можете добавить папку либо из кода, непосредственно добавляя к sys.path, либо с помощью PYTHONPATH переменной среды.

Также попробуйте напечатать sys.path, потому что Intellij может добавить проект root в python путь. Тогда оператором импорта будет:

import parent_a.parent_b.py.module_needed

без каких-либо изменений.

Может быть полезно добавить проект root, тогда вам не нужно будет добавлять каждую отдельную папку отдельно .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...