Résolution des erreurs d'importation circulaire en Python
En Python, les importations circulaires se produisent lorsque plusieurs modules tentent de s'importer les uns les autres. Cela peut entraîner des erreurs telles que « ImportError : Impossible d'importer le nom X » ou « AttributeError : ... (très probablement en raison d'une importation circulaire). »
Par exemple, considérez ce qui suit code :
main.py:
from entity import Ent
entity.py:
from physics import Physics class Ent: ...
physics.py:
from entity import Ent class Physics: ...
Quand vous exécutez main.py, vous rencontrerez une erreur :
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
L'erreur est causée par la dépendance circulaire entre physical.py et entité.py. Physics.py tente d'importerentity.py, qui est déjà en cours d'initialisation.
Pour résoudre ce problème, vous devez supprimer la dépendance à physical.py du moduleentity.py. Par exemple, vous pouvez modifierentity.py comme suit :
entity.py :
# Do not import physics.py class Ent: ...
Maintenant, lorsque vous exécutez main.py, vous ne devriez plus rencontrer d'erreur.
Pour mieux comprendre les importations circulaires, reportez-vous aux ressources fournies dans les notes de bas de page.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!