python项目中的路径导入问题

Published on
11

projectA的项目树结构如下:

projectA
├─ main.py
├─ Report
│  └─ report.py
├─ Test
│  └─ testA.py
└─ Utils
   └─ config.py

如果要获取项目的根目录,也就是到projectA的项目路径。则可以选择在一级子目录下创.py文件,获取。这里我把代码创建在了config.py文件。BASE_PATH就是项目的根目录。

import os
from pathlib import Path

# 通过当前文件的绝对路径,其父级目录一定是框架的base目录,然后确定各层的绝对路径。如果你的结构不同,可自行修改。
BASE_PATH = os.path.split(os.path.dirname(os.path.abspath(__file__)))[0]

为了便于统一管理,还可以继续添加其它模块的路径:

# 报告文件路径
REPORT_PATH = Path(BASE_PATH) / 'Report'

# 测试文件路径
TEST_PATH = Path(BASE_PATH) / 'Test'


如何使用?

from Utils.config import REPORT_PATH 
from pathlib import Path

reportName = Path(REPORT_PATH) / f'{now}.html'

1