python 表级驱动,循环导入

解决Python循环导入问题:表级驱动写法解析
本文探讨了Python中常见的循环导入问题,并提供了一种解决方案——表级驱动写法。通过将函数名作为字符串存储在字典中,避免了直接导入导致的循环引用。这种方法适用于需要函数映射的场景,可以有效优化代码结构,提高模块的独立性。

在工作中遇到这么一个问题,有三个 py 模块,A ,B,C,C 需要调用 A ,B 中的东西使用,但 A  中导入 B,B 中也导入了 A,就会造成循环导入,需要改成表级驱动写法,先看循环导入具体样例

 这里只是举个例子,什么是循环导入

现在来改成表级驱动,在此之前先看一种正常写法

左到右,ABC,需要根据 ll 的值判断是否在字典 fun 中,在的话获得对应函数,进行调用:

 这种写法正常就可以了,如遇到了循环导入就需要表级驱动:

 意思就是把字典的键对应的值为函数名,函数名为字符串格式,这样就可以避免在 B 中导入 A 了,A 中的函数必须加 @classmethod,C 从就可以通过 getattr(类,函数名) 进行调用。

一般有函数映射的场景使用。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值