Импорт функций из другого каталогаPython

Программы на Python
Ответить
Anonymous
 Импорт функций из другого каталога

Сообщение Anonymous »

Сейчас я работаю над личным проектом на Python, где у меня есть много разных пакетов для организации вместе разных частей одинакового кода. Я столкнулся с ситуацией, когда мне нужно получить доступ к фрагменту кода из другого каталога, но я столкнулся с ошибками при попытке запустить код с терминала. (Командная строка Windows)
Вот более простой пример проблемы, с которой я столкнулся:

Код: Выделить всё

parentPackage/
__init__.py
pack1/
__init__.py
file1.py
pack2/
__init__.py
file2.py
file3.py
Файлы 1 и 2 содержат функции foo() и foo2() соответственно, и мне нужно получить доступ к обеим функциям внутри файла 3.
Используя PyCharm, я могу отлично запустить файл 3, используя следующий импорт:

Код: Выделить всё

from parentPackage.pack1.file1 import foo
from file2 import foo2
Однако при этом командный терминал выдает ошибки:

Код: Выделить всё

ModuleNotFoundError: No module named 'parentPackage' (line 1)
Используя относительный импорт, я могу получить что-то, что принимает компилятор, но все равно не удается во время выполнения:

Код: Выделить всё

from ..pack1.file1 import foo
from file2 import foo2

ImportError: attempted relative import with no known parent package (line 1)
Есть предложения о том, как получить доступ к нужным мне функциям из файла 3?

Подробнее здесь: https://stackoverflow.com/questions/792 ... -directory
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»