Импорт с использованием PyCharm не работает в командной строке - PullRequest
0 голосов
/ 07 декабря 2018

Я немного новичок в Python, и я строю проект в PyCharm, так как я привык к IntelliJ, и у меня проблема с моей файловой структурой.Когда мне нужно импортировать файл в тот же подкаталог - каталог c, я должен набрать

from a.b.c import y, где a - домашний каталог проекта, b.c - подкаталог, в котором я нахожусь.в.

Так что я не могу import y каталог.Это вызывает проблемы, если я хочу запустить этот файл через командную строку, он использует текущий каталог в качестве пути, то есть импорт ничего не знает о x.xx.Что я могу сделать, чтобы решить эту проблему?

Спасибо!

1 Ответ

0 голосов
/ 07 декабря 2018

Для целей этого ответа я предполагаю, что y - это модуль Python в каталоге c.Другими словами, существует файл с именем y.py в a/b/c.

import y, работающий в модуле Python в каталоге c, если текущий рабочий каталог также c.

В Intellij IDEA с плагином Python (во многом аналогичным PyCharm большую часть времени) текущий рабочий каталог называется «Рабочим каталогом» в каждой конфигурации Run / Debug, которую вы настроили для запуска скрипта.

import y также будет работать, если c находится на PYTHONPATH.

Другой способ сделать y доступным для оператора импорта - это превратить каталоги a и b в Pythonпакеты.Это означает, по крайней мере, помещение пустого файла __init__.py в каталоги a и b.

Затем можно использовать a в качестве корневого каталога для проекта и использовать:

from a.b.c import y

Стоит прочитать Подробное руководство по утверждениям импорта Python , если вы не уверены, как Python разрешает импорт.

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