Verwenden Sie die .py
Erweiterung nicht für Ihre Importe.
Funktioniert from 8puzzle import *
?
Für das, was es wert ist, from x import *
ist es kein bevorzugtes Python-Muster, da es den Namespace dieses Moduls in Ihren aktuellen Kontext einfügt.
Versuchen Sie im Allgemeinen, die gewünschten Elemente aus diesem Modul zu importieren. Jedes globale aus dem anderen Modul kann importiert werden.
zB wenn du hast 8puzzle.foo
kannst du `aus 8puzzle importieren
Bearbeiten:
Obwohl meine .py
Nachricht korrekt ist, reicht sie nicht aus.
Der __import__('8puzzle')
Vorschlag des anderen Posters ist richtig. Ich empfehle jedoch dringend, dieses Muster zu vermeiden .
Zum einen ist eine interne, private Python-Methode reserviert. Sie brechen im Grunde die grundlegenden Annahmen darüber, was es bedeutet, ein Modul importieren zu können. Wenn Sie die Datei einfach in etwas anderes umbenennen puzzle8
, wird dies behoben.
Dies wird die Hölle von erfahrenen Python-Programmierern frustrieren, die erwarten, zu wissen, was Ihre Importe an der Spitze sind, und erwarten, dass der Code PEP8 entspricht (versucht) .