Пример:
Создаем класс MyObject и помещаем его в MyObject.py.
Создаем main.py.
Кладем оба файла в пакет my_pack
В main.py делаем импорт MyObject:
#-------------------Start of script---------------------
from my_pack import MyObject
def create_my_object():
return MyObject() #<-- здесь будет выброшен 'module' object is not callable
create_my_object()
#-------------------End of script---------------------
Почему мы получаем такую ошибку? Да потому что Python не Java и при импорте классов не достаточно определять только пакет.
Исправляем ошибку:
Заменяем 'from my_pack import MyObject' на 'from my_pack.MyObject import MyObject'
Теперь все ОК!