Không sử dụng .pytiện ích mở rộng trong quá trình nhập của bạn.
Không from 8puzzle import *hoạt động?
Đối với những gì nó đáng giá, from x import *không phải là một mẫu Python ưa thích, vì nó làm tràn không gian tên của mô-đun đó vào ngữ cảnh hiện tại của bạn.
Nói chung, hãy cố gắng nhập những thứ bạn muốn cụ thể từ mô-đun đó. Bất kỳ toàn cục nào từ mô-đun khác đều có thể được nhập.
ví dụ: nếu bạn có, 8puzzle.foobạn có thể làm `từ nhập 8puzzle
Biên tập:
Mặc dù .pythông điệp của tôi là đúng, nhưng nó không đủ.
__import__('8puzzle')Đề xuất của người đăng khác là đúng. Tuy nhiên, tôi thực sự khuyên bạn nên tránh mô hình này .
Đối với một, nó dành riêng một phương thức Python nội bộ, riêng tư.  Về cơ bản, bạn đang phá vỡ các giả định cơ bản về ý nghĩa của việc có thể nhập một mô-đun.   Chỉ cần đổi tên tệp thành một thứ khác, chẳng hạn như puzzle8, sẽ khắc phục được điều này.
Điều này sẽ làm thất vọng những lập trình viên Python có kinh nghiệm, những người đang mong đợi biết những gì bạn nhập ở trên cùng và đang mong đợi mã (cố gắng) tuân thủ PEP8 .