gpt4 book ai didi

python - 文件夹结构和导入

转载 作者:行者123 更新时间:2023-12-01 08:38:13 24 4
gpt4 key购买 nike

所以我目前正在做一个小项目,但我在进口方面遇到了困难。最初我有一个像这样的结构:

root -> python
-> tests -> testscripts

我正在从 python 文件夹运行测试,并且该文件夹中有一个名为 pertest_resources 的类,其中包含其他文件夹(如根目录和脚本文件夹)的路径。

python_folder = os.path.realpath(os.curdir)
perf_root_folder = os.path.realpath(python_folder + "/../")
test_root_folder = os.path.realpath(python_folder + "/../tests")
script_folder = os.path.realpath(test_root_folder + "/scripts")
network_folder = os.path.realpath(test_root_folder + "/networks")
output_folder = os.path.realpath(test_root_folder + "/output")
input_folder = os.path.realpath(test_root_folder + "/input")
kit_folder = os.path.realpath(perf_root_folder + "/kit")
sys.path.append(python_folder)
sys.path.append(script_folder)
sys.path.append(network_folder)
现在,当所有核心文件都在 python 文件夹中时,这工作得很好,但现在它变得有点困惑,我被要求将一些 python 脚本分支到一个名为“networks”的新文件夹,其结构如下:

root -> python -> perftest_resources.py
-> tests -> testscripts
-> networks -> standard_network.py

现在我想从 python 文件夹运行一个名为 test 的文件,该文件使用 standard_network 依次从 python 文件夹导入 perftest_resources。

我已经尝试过:

sys.path.append('..' + os.sep + '..') 
from python.perftest_resources import PerfTestResources as pr

但是当它最初从 python 文件夹中的 test.py 运行时,这不起作用。我需要将 init 添加到这两个文件夹吗?

最佳答案

是一个包吗?如果为 true,您应该使用包内引用,例如

from . import echo
from .. import formats
from ..filters import equalizer

如果没有,则将其打包)

了解更多:https://docs.python.org/3/tutorial/modules.html

关于python - 文件夹结构和导入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53612048/

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