我正在尝试从test_file层次结构中导入指定的模块
类似的东西:
test_case1.py
test_subsuite_2
test_sub_2.1.1.py
test_suite2
是否可以在此层次结构上执行运行导入
/project/main.py
/project/test_files
test_files文件夹层次结构如下:
test_files
test_suite1
test_case1.py
test_subsuite_1
test_sub1_1.py
test_sub1_2.py
test_subsuite_2
test_subsuite_2_1
test_sub_2.1.1.py
test_sub2_1.py
test_sub3_2.py
test_suite2
test_case2.py
test_subsuite2_1
test_sub21_1.py
test_sub21_2.py
test_subsuite2_2
test_sub22_1.py
test_sub23_2.py
答案 0 :(得分:5)
在所有文件夹中创建一个名为__init__.py
的空文件。然后,您可以使用.
作为文件夹分隔符导入。 Documentation here.
答案 1 :(得分:2)
关键是在包含要导入的文件的所有子文件夹上创建空白文件__init__.py
。
在您的情况下,您必须在以下所有文件夹中创建__init__.py
文件 -
此外,在导入文件时,请注意正确指定导入路径,指定最高级别的整个路径,并使用.
分隔的不同文件夹级别
例如,您必须通过指定:
来自test_files.test_suite1 import test_case1
同样,可以通过指定:
导入test_subsuite_2来自test_files.test_suite1 import test_subsuite_2