python读取相对路径文件
时间: 2025-01-10 10:34:42 浏览: 75
### 使用相对路径读取文件
在 Python 中使用相对路径读取文件可以通过多种方式实现。一种常见的方式是利用 `os` 和 `pathlib` 库来构建和处理路径。
#### 方法一:使用 `os.path`
通过组合当前工作目录与目标文件的相对路径,可以安全地定位并打开文件:
```python
import os
relative_path = "data/sample.txt"
current_directory = os.getcwd()
file_path = os.path.join(current_directory, relative_path)
if not os.path.isfile(file_path) or not os.path.exists(file_path)[^1]:
raise FileNotFoundError(f"The file {file_path} does not exist.")
with open(file_path, 'r') as f:
content = f.read()
print(content)
```
此方法适用于简单的脚本环境,在其中可以直接基于执行位置推断出其他资源的位置。
#### 方法二:使用 `pathlib.Path`
对于更现代的做法,推荐采用 `pathlib.Path` 来操作路径对象,这使得代码更加简洁易懂:
```python
from pathlib import Path
relative_file_path = Path('data') / 'sample.txt'
if not relative_file_path.is_file():
raise FileNotFoundError(f"{relative_file_path.absolute()} doesn't exist")
content = relative_file_path.read_text(encoding='utf-8')
print(content)
```
这种方法不仅提高了可移植性和跨平台兼容性,还简化了路径字符串的操作逻辑。
当涉及到包内资源时,则应考虑使用 `importlib.resources` 或者其替代品 `importlib_resources` 以确保不同版本间的稳定性[^3]。
阅读全文
相关推荐



















