2015-04-04 5 views
1

Я создал пакет под названием application с помощью PyCharm. Ниже вы можете увидеть ее структуру, а также, что вызов функции из сценария в другой папке работает отлично от моего рабочего стола:Python: Проблемы с пакетом

My PyCharm Package

Однако, когда я скопировать все содержимое папки в моей Raspberry Pi и попробовать для выполнения того же сценария появляется сообщение об ошибке:

sudo python function2.py 
Traceback (most recent call last): 
    File "function2.py", line 1, in <module> 
    from application.sub_1 import function1 
ImportError: No module named application.sub_1 

Что мне здесь не хватает?

+0

Я видел подобную проблему, где приложение модуля не найдено, потому что программа была запущена из подпапки. Попробуйте добавить файл python в приложение папки, которое импортирует sub_2 и вызывает функцию2. – xxyzzy

ответ

0

PyCharm должен управлять вашим PYTHONPATH для вас. Попробуйте:

sudo env PYTHONPATH=<substitute path to smart_house dir here> python function2.py

Note, чтобы избежать других гадости, что выплывает при работе модулей, как это, вы, вероятно, следует искать в использовании:

sudo env PYTHONPATH=<substitute path to smart_house dir here> python -m application.sub_2.function2

+0

Привет, Дэвид. Он работает так, но существует ли постоянное решение о том, как получить это исправление, а не добавлять его в каждый звонок? Благодаря! –

+0

Вы можете установить его в корневом каталоге .bashrc. –

Смежные вопросы