Я не новичок в Python, но столкнулся со странной проблемой.
Я установил эту структуру проекта Python (отрывок):
- проект-A/myapp
- проект-B/ядро/общий/библиотека
где myapp/core, common & lib — это пакеты Python.
Каталог проекта-B установлен в пути python как «/root_path/to/core_module»
когда я запускаю скрипт, который импортирует модули в каталог project-A/myapp:
from core.common.lib import Error, XmlSource, Property, Preference
он вызывает ошибку:
ImportError: нет модуля с именем «ядро»
без изменения текущего каталога в интерпретаторе python3 и ввода той же команды:
jeby6372@mercure:~/factory/bubble$ python3
Python 3.4.0 (default, Apr 9 2014, 20:03:10)
[GCC 4.7.2] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> from core.common.lib import Error, XmlSource, Property, Preference
>>>
Модуль загружен... Я ожидал того же поведения, что и выше, во время выполнения скрипта.
поэтому я пытаюсь добавить эту команду перед оператором импорта, который терпит неудачу
os.environ['PYTHONPATH'] = '/root_path/to/core_module'
без успеха...
Есть идеи ?
Возможно, я ошибаюсь, но я предполагаю, что интерпретатор python3 ищет относительный путь модулей импорта, указанный сначала в текущем каталоге, а затем в определенном пути python, где бы он ни вызывался.
Спасибо за вашу помощь
import sys print sys.path
- person ProfHase85   schedule 02.05.2014