Python ожидает в каждом каталоге, который должен быть импортирован, файл __init__.py
, который может быть пустым. Итак, если вы исправите свою файловую структуру следующим образом:
Blog/__init__.py
Blog/index.py
Blog/DataObjects/User.py
Blog/DataObjects/__init__.py
это должно работать, если путь к каталогу находится в вашем пути Python (вы можете проверить это с помощью:
import sys
print sys.path
). Если нет, обратите внимание, что импорт выполняется относительно позиции текущего файла. То есть, поскольку index.py уже находится внутри Blog
, импорт должен выглядеть так:
from DataObjects.User import say_hello