我是靠谱客的博主 糊涂楼房,最近开发中收集的这篇文章主要介绍python 循环引用的解决方法,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

目录

1、问题描述

2、原因

3、示例

4、解决办法


1、问题描述

编写python代码,运行中出现了:‘most likely due to a circular import ’  这样的报错。

2、原因

循环引用问题,即A引用了B,B又引用了A,造成循环引用的问题。

3、示例

 4、解决办法

1)延迟导入:即将 from xxx import yyy 放到函数或类的内部,从而使其作用域变成局部的。但是这样可能会对性能有些影响。

如下图将import TestA放到函数内部,问题得到解决:

2)直接导入模块名,通过模块调用其中的函数

将 from xxx import yyy 转换成 import xxx; xxx.yyy 的形式 。

修改为直接引入模块,在函数内通过 模块.函数 调用解决 :

 3)重新设计代码结构,将代码和并或者分离

方法1)和2)以上两种方式都是治标不治本的,只能说能够用,但是并不符合规范。

最好的办法应该是从代码布局入手,比如合并或分离循环引用的部分,合并就是将代码放到一个文件里面,自然就不用循环引用了分离的话就是将循环引用的部分放到第三个py文件中,这样也可以。

最后

以上就是糊涂楼房为你收集整理的python 循环引用的解决方法的全部内容,希望文章能够帮你解决python 循环引用的解决方法所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(58)

评论列表共有 0 条评论

立即
投稿
返回
顶部