Грешка на Python "ImportError: No module named"
Python е инсталиран в локална директория.
Дървото на директориите ми изглежда по следния начин:
(local directory)/site-packages/toolkit/interface.py
Моят код е тук:
(local directory)/site-packages/toolkit/examples/mountain.py
За да изпълня примера, пиша python mountain.py
, а в кода имам:
from toolkit.interface import interface
И получавам грешката:
Traceback (most recent call last):
File "mountain.py", line 28, in ?
from toolkit.interface import interface
ImportError: No module named toolkit.interface
Вече проверих sys.path
и там имам директорията /site-packages
. Също така имам файла __init__.py.bin
в папката с инструменти, за да укажа на Python, че това е пакет. Имам и файл __init__.py.bin
в директорията с примери.
Не знам защо Python не може да намери файла, когато той е в sys.path
. Има ли някакви идеи? Може ли да е проблем с разрешенията? Трябва ли ми някакво разрешение за изпълнение?
409
3
Въз основа на коментарите ви към публикацията на orip's, предполагам, че това се е случило:
__init__.py
на Windows.__init__.py
(сега се нарича__init__.py.bin
) означава, че python не разбира toolkit като пакет.__init__.py
в съответната директория и всичко работи... ?Има ли
има
__init__.py
?За да може импортът да се разхожда из директориите ви, всяка директория трябва да има файл
__init__.py
.За да маркирате дадена директория като пакет, ви е необходим файл с име
__init__.py
, това помага ли ви?