gpt4 book ai didi

python - 重构 python 模块配置以避免相对导入

转载 作者:行者123 更新时间:2023-11-28 17:55:19 24 4
gpt4 key购买 nike

这与一个 previous question 有关我的。

我了解如何存储和读取配置文件。有诸如ConfigParser之类的选择和 ConfigObj .

考虑这个假设的“鸡蛋”模块的结构:

eggs/  common/    __init__.py    config.py  foo/    __init__.py    a.py

'eggs.foo.a' 需要一些配置信息。我目前正在做的是,在“a”中,

import eggs.common.config
.这样做的一个问题是,如果将“a”移动到模块树中的更深层次,相关导入就会中断。绝对导入不需要,但它们要求您的模块位于您的 PYTHONPATH 上。

上述绝对导入的可能替代方法是相对导入。因此,在 'a' 中,

import .common.config

在不讨论相对进口与绝对进口的优点的情况下,我想知道其他可能的解决方案吗?

edit- 删除了 VCS 上下文

最佳答案

“导入...要求您的模块在您的 PYTHONPATH 上”

没错。

那么,设置 PYTHONPATH 有什么问题?

关于python - 重构 python 模块配置以避免相对导入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/345746/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com