Kullanmayın .pysenin ithalattaki uzantısı.
Çalışıyor mu from 8puzzle import *?
Değeri ne from x import *olursa olsun, o modülün ad alanını mevcut bağlamınıza dahil ettiği için tercih edilen bir Python kalıbı değildir.
Genel olarak, özellikle o modülden istediğiniz şeyleri içe aktarmaya çalışın. Diğer modülden herhangi bir global içe aktarılabilir.
örneğin, eğer varsa 8puzzle.foo, 8puzzle ithalatından yapabilirsiniz.
Düzenle:
Mesajım .pydoğru olsa da yeterli değil.
Diğer göndericinin __import__('8puzzle')önerisi doğrudur. Ancak, bu modelden kaçınmanızı şiddetle tavsiye ederim .
Birincisi, dahili, özel bir Python yöntemi ayrılmıştır. Temel olarak, bir modülü içe aktarmanın ne anlama geldiğine dair temel varsayımları çiğniyorsunuz. Dosyayı basitçe başka bir adla yeniden adlandırmak puzzle8, bunu çözecektir.
Bu, içeriğinizin en üstte ne olduğunu bilmek ve kodun PEP8'e uymasını (denemek) bekleyen deneyimli Python programcılarını hayal kırıklığına uğratacaktır .