ImportError: невозможно импортировать имя «MyLibrary» - PullRequest
0 голосов
/ 04 апреля 2020

Я смотрел учебник, который был закодирован в Python об OpenCV. Я получаю сообщение об ошибке при попытке импортировать класс. Ниже приведена ошибка.

 Traceback (most recent call last):
  File "webstreaming.py", line 1, in <module>
    from pyimagesearch.motion_detection import SingleMotionDetector
ImportError: cannot import name 'SingleMotionDetector' from 'pyimagesearch.motion_detection' (/home/pi/Desktop/Denemeler/pyimagesearch/motion_detection/__init__.py)

Вот мое дерево каталогов.

.
├── pyimagesearch
│   ├── __init__.py
│   └── motion_detection
│       ├── __init__.py
│       └── singlemotiondetector.py
├── templates
│   └── index.html
└── webstreaming.py

Я проверил stackoverflow, но ни один из ответов не сработал для меня. Спасибо.

1 Ответ

0 голосов
/ 04 апреля 2020

Когда импортируется обычный пакет, этот файл init .py выполняется неявно, а определяемые им объекты привязываются к именам в пространстве имен пакета.

Поскольку __init__.py не имеет импорта модулей, нам придется вручную импортировать необходимые подмодели из соответствующего файла. SingleMotionDetector находится в singlemotiondetector.py, импорт должен выглядеть следующим образом:

from pyimagesearch.motion_detection.singlemotiondetector import SingleMotionDetector

Ссылка: python Пакеты

...