gpt4 book ai didi

python - 如何从多个级别导入 python 文件?

转载 作者:行者123 更新时间:2023-12-01 06:42:15 25 4
gpt4 key购买 nike

我的文件结构如下:

enter image description here

deepxi/lib/dev/acoustic/feat/polar.py,我想导入deepxi/lib/dev/acoustic/analysis_synthesis/polar.py,我设法做到了:

import sys
sys.path.insert(0, '../..')

from ..analysis_synthesis import polar

但我还想包含 deepxi/lib/dev/add_noise.py。我尝试过 from add_noise import add_noise_batch,但无济于事。有什么想法吗?

我没有能力导出 PYTHONPATH=...

最佳答案

如果将项目的根目录添加为 export PYTHONPATH='/path/to/deepxi'

然后调用极地即可

从 lib.dev.acoustic.analysis_synthesis 导入极坐标

并调用add_noise_batch,你会这样做

从 lib.dev 导入 add_noise_batch

导出 PYTHONPATH='/path/to/deepxi/lib'

然后做:

从 dev.acoustic.analysis_synthesis 导入极坐标

来自 dev import add_noise_batch

就像您可以向 PYTHONPATH 添加更多内容,但最佳实践是添加根文件夹(第一种方法),然后使用您所调用的内容的绝对路径。

此外,重命名 lib 因为它也是 Python 中的公共(public)模块。始终命名内容,使其与现有模块不重合。所以 analysis_synth_lib 或不是 lib

的东西

注意

您可以向 PYTHONPATH 添加多个路径,不建议这样做,但您可以这样做!例如导出 PYTHONPATH='/path/to/deepxi:/path/to/deepxi/lib'

现在,每当您运行该函数时,它都会耗尽 PYTHONPATH 中的所有路径来查找它要查找的内容!

关于python - 如何从多个级别导入 python 文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59393772/

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