.pth文件
.pth
并非单一用途的文件后缀,其具体类型需结合 文件来源、关联软件或开发场景 判断,核心用途集中在 Python 开发 和 深度学习 领域,以下是其主要类型及详细说明:
一、核心用途 1:Python 路径配置文件(最常见)
在 Python 生态中,.pth
文件是 路径配置文件(Path Configuration File),用于告诉 Python 解释器 “去哪里寻找自定义模块或包”,解决 “导入自定义代码时找不到路径” 的问题。
1. 核心功能
Python 导入模块时,会从 sys.path
列表中的目录里搜索文件。.pth
文件的作用就是 向 sys.path
中自动添加自定义目录,无需每次通过代码(如 sys.path.append()
)手动添加。
2. 文件特点
- 格式:纯文本文件,无复杂语法,每行仅需写一个 “要添加的目录路径”(绝对路径或相对路径均可)。
- 放置位置:需放在 Python 能自动识别的目录下,常见位置包括:
- Python 标准库的
site-packages
目录(如Python3.x/Lib/site-packages
); - 系统环境变量
PYTHONPATH
指向的目录。
- Python 标准库的
3. 示例
若你有一个自定义模块放在 D:/my_python_modules
目录下,可创建一个 my_paths.pth
文件,内容仅一行:
D:/my_python_modules
将该 .pth
文件放入 site-packages
后,重启 Python,即可直接导入该目录下的模块(如 import my_module
),无需再手动添加路径。
二、核心用途 2:PyTorch 深度学习模型文件
在深度学习框架 PyTorch 中,.pth
是最常用的 模型权重 / 完整模型保存文件,用于存储训练好的模型参数(或整个模型结构 + 参数),方便后续加载、推理或继续训练。
1. 两种常见保存形式
保存内容 | 用途 | 保存代码示例(PyTorch) | 加载代码示例(PyTorch) |
---|---|---|---|
仅模型权重(推荐) | 轻量存储,需先定义模型结构再加载参数 | torch.save(model.state_dict(), "model.pth") | model.load_state_dict(torch.load("model.pth")) |
完整模型(含结构 + 权重) | 无需提前定义结构,直接加载整个模型 | torch.save(model, "full_model.pth") | model = torch.load("full_model.pth") |
2. 注意事项
- 该类型文件是 二进制文件,无法用记事本打开(打开会显示乱码),必须通过 PyTorch 的
torch.load()
函数加载; - 模型文件与 PyTorch 版本、Python 版本可能存在兼容性问题,高版本保存的模型可能无法在低版本框架中加载。
三、其他小众用途
除上述两种核心场景外,.pth
还可能对应其他领域的文件,但使用频率较低:
- Pathway 软件项目文件:数据处理工具 Pathway 的项目配置文件,用于存储数据流程、计算逻辑等配置;
- 部分游戏 / 软件资源文件:少数游戏或桌面软件会用
.pth
存储资源(如纹理、脚本配置),具体需结合对应的软件解析。
总结:如何判断 .pth
文件类型?
- 若文件来自 Python 项目目录(如
site-packages
下),且用记事本打开是纯文本路径 → Python 路径配置文件; - 若文件来自 PyTorch 训练项目,且大小较大(通常几 MB 到数 GB) → PyTorch 模型文件;
- 若文件关联特定软件(如 Pathway、某款游戏) → 对应软件的专用文件,需参考该软件文档解析。