Python 以其简单性和可读性而闻名,它提供了一个方便的导入系统来重用来自各种模块和库的代码。
但是,许多开发人员发现 Python 中的导入系统不是最佳的,甚至令人沮丧。
本文将探讨与 Python 导入相关的一些常见痛点,以及为什么它们有时会导致混乱、效率低下甚至错误。
1. 循环导入
Python 导入中最常被提起的问题之一是循环导入。当两个或多个模块相互依赖时,就会发生这种情况,从而创建一个循环。
例如:
# module_a.py
from module_b import some_function
# module_b.py
from module_a import another_function
这将创建一个循环依赖关系,其中模块 A 正在等待模块 B 加载,反之亦然。
在这种情况下,Python 会引发ImportError异常,因为它无法解决应该首先导入哪个模块。
虽然这个问题可以通过重构代码或使用本地导入来解决,但它通常会给项目设计带来不必要的复杂性,并迫使开发人员重新考虑他们的模块化策略。
2. 相对和绝对导入的歧义
Python 允许两种类型的导入:绝对导入和相对导入。</

最低0.47元/天 解锁文章
738

被折叠的 条评论
为什么被折叠?



