Dépendance circulaire en Python
Rencontrer une dépendance circulaire peut être un problème frustrant lorsque l'on travaille avec des modules Python. Dans ce scénario spécifique, nous avons deux fichiers, node.py et path.py, contenant respectivement les classes Node et Path.
Initialement, path.py a importé node.py en utilisant from node.py import *. Cependant, après avoir ajouté une nouvelle méthode à Node faisant référence à l'objet Path, l'importation de path.py a généré une erreur car Node n'a pas été défini.
Pour résoudre la dépendance circulaire, envisagez d'implémenter ce qui suit :
Utiliser l'évaluation paresseuse : au lieu d'importer un module dans un autre lors de l'initialisation, importez-le uniquement lorsque cela est nécessaire dans une fonction spécifique. Par exemple, dans node.py, importez le chemin uniquement lorsque cela est nécessaire :
# in node.py from path import Path class Node ...
Dans path.py, importez Node uniquement dans la méthode qui l'exige :
# in path.py class Path def method_needs_node(): from node import Node n = Node() ...
Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.
Copyright© 2022 湘ICP备2022001581号-3