Dependencia circular en Python
Encontrar una dependencia circular puede ser un problema frustrante cuando se trabaja con módulos de Python. En este escenario específico, tenemos dos archivos, node.py y path.py, que contienen las clases Node y Path, respectivamente.
Inicialmente, path.py importó node.py usando from node.py import *. Sin embargo, después de agregar un nuevo método a Node que hace referencia al objeto Path, la importación de path.py generó un error porque Node no estaba definido.
Para resolver la dependencia circular, considere implementar lo siguiente:
Utilice evaluación diferida: en lugar de importar un módulo dentro de otro durante la inicialización, impórtelo solo cuando sea necesario dentro de una función específica. Por ejemplo, en node.py, solo importe la ruta cuando sea necesario:
# in node.py from path import Path class Node ...
En path.py, importe Node solo dentro del método que lo requiera:
# in path.py class Path def method_needs_node(): from node import Node n = Node() ...
Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.
Copyright© 2022 湘ICP备2022001581号-3