ModuleNotFoundError в Python 3, но не 2 - PullRequest
0 голосов
/ 30 мая 2018

Я получаю ModuleNotFoundError в Python 3 при попытке импортировать пакет, содержащий __init__.py, который импортирует переменную из одного из модулей пакета.

Моя структура проекта:

project/
  test.py
  package/
    __init__.py
    modu.py

modu.py:

value = 99

__init__.py:

from modu import value

test.py:

import package
print(package.value)  # or 'print package.value' for Python 2

Когда я запускаю test.py с использованием Python2, все работает.Но когда я бегу с Python 3, я получаю ModuleNotFoundError: No module named 'modu'.Я работаю из каталога project/.

Может кто-нибудь объяснить, почему это происходит?Спасибо.

1 Ответ

0 голосов
/ 30 мая 2018

Поскольку Python3 ожидает абсолютный путь для модулей:

__init__.py:

from package.modu import value

Работает в обеих версиях

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