Не используйте .py
расширение при импорте.
Работает from 8puzzle import *
?
Как бы то ни было, from x import *
он не является предпочтительным шаблоном Python, поскольку он вводит пространство имен этого модуля в ваш текущий контекст.
В общем, попробуйте импортировать именно то, что вам нужно, из этого модуля. Любой глобал из другого модуля может быть импортирован.
например, если у вас есть, 8puzzle.foo
вы можете сделать `from 8puzzle import
Редактировать:
Хотя мое .py
сообщение верное, этого недостаточно.
Предложение другого автора __import__('8puzzle')
верно. Однако я настоятельно рекомендую избегать этого шаблона .
Во-первых, он зарезервировал внутренний частный метод Python. По сути, вы нарушаете фундаментальные предположения о том, что значит иметь возможность импортировать модуль. Простое переименование файла во что-нибудь другое, например puzzle8
, исправит это.
Это ужасно расстроит опытных программистов Python, которые ожидают, что они будут знать, что ваш импорт находится на вершине, и ожидают, что код (попытается) соответствовать PEP8 .