Dependência circular em Python
Encontrar uma dependência circular pode ser um problema frustrante ao trabalhar com módulos Python. Neste cenário específico, temos dois arquivos, node.py e path.py, contendo as classes Node e Path, respectivamente.
Inicialmente, path.py importou node.py usando from node.py import *. No entanto, após adicionar um novo método ao Node que faz referência ao objeto Path, a importação de path.py resultou em um erro porque o Node não foi definido.
Para resolver a dependência circular, considere implementar o seguinte:
Utilize avaliação lenta: em vez de importar um módulo dentro de outro durante a inicialização, importe-o apenas quando necessário dentro de uma função específica. Por exemplo, em node.py, importe Path apenas quando necessário:
# in node.py from path import Path class Node ...
Em path.py, importe o Node somente dentro do método que o requer:
# in path.py class Path def method_needs_node(): from node import Node n = Node() ...
Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.
Copyright© 2022 湘ICP备2022001581号-3