Mengatasi Ralat Import Pekeliling dalam Python
Dalam Python, import pekeliling berlaku apabila berbilang modul cuba mengimport antara satu sama lain. Ini boleh membawa kepada ralat seperti "ImportError: Tidak boleh mengimport nama X" atau "AttributeError: ... (kemungkinan besar disebabkan oleh import bulat)."
Sebagai contoh, pertimbangkan perkara berikut kod:
main.py:
from entity import Ent
entity.py:
from physics import Physics class Ent: ...
fizik.py:
from entity import Ent class Physics: ...
Apabila anda berlari main.py, anda akan menghadapi ralat:
Traceback (most recent call last): File "main.py", line 2, in <module> from entity import Ent File ".../entity.py", line 5, in <module> from physics import Physics File ".../physics.py", line 2, in <module> from entity import Ent ImportError: cannot import name Ent
Ralat disebabkan oleh pergantungan bulat antara fizik.py dan entity.py. Physics.py cuba mengimport entity.py, yang sudah dimulakan.
Untuk menyelesaikan isu ini, anda harus mengalih keluar kebergantungan kepada physics.py daripada modul entity.py. Contohnya, anda boleh mengubah suai entity.py seperti berikut:
entity.py:
# Do not import physics.py class Ent: ...
Kini, apabila anda menjalankan main.py, anda tidak sepatutnya menghadapi ralat lagi.
Untuk pemahaman lanjut tentang import pekeliling, rujuk sumber yang disediakan dalam nota kaki.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menyelesaikan Ralat Import Pekeliling dalam Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!