Установите и загрузите модуль с вложенными файлами _init__.py - PullRequest
0 голосов
/ 13 марта 2019

Я не хочу задавать лишний вопрос, но я застрял и мне нужна помощь:

Допустим, у меня есть пример проекта, структурированный как:

project/
    setup.py
    example/
        __init__.py
        prg.py
        tests/
            __init__.py
            test_foo.py

setup.py выглядит так:

from setuptools import setup

setup(name='example', version='0.12c',
      description='Example Description',
      author='me', author_email='me@gmail.com',
      packages=['example'])

Я пытаюсь установить его на базовую версию anaconda (windows 10, python 3.6, версия conda: 4.6.3), используя

python setup.py install

Все выглядит нормально:

Installed c:\anaconda3\lib\site-packages\example-0.12rc0-py3.6.egg
Processing dependencies for example==0.12rc0
Finished processing dependencies for example==0.12rc0

Когда я пытаюсь загрузить свой пакет в ipython:

import example

я получаю следующую ошибку:

In [1]: import example
---------------------------------------------------------------------------
ModuleNotFoundError                       Traceback (most recent call last)
<ipython-input-1-3ef45b82d40c> in <module>()
----> 1 import example

C:\workspace\git_clones\example\example\__init__.py in <module>()
----> 1 from prg import object1, object2

ModuleNotFoundError: No module named 'prg'

Что я не понимаю?

1 Ответ

1 голос
/ 13 марта 2019

Попробуйте добавить . к импорту в __init__.py:

from .prg import object1, object2

См. в этом вопросе для получения дополнительной информации об относительном импорте.

...