贝利信息

python绝对路径和相对路径怎么写

日期:2025-12-05 00:00 / 作者:冷漠man
Python路径应基于脚本位置动态生成而非硬编码:用Path(__file__).parent构建绝对路径,避免依赖当前工作目录;相对路径以工作目录为起点易出错,推荐统一以脚本位置为基准构造路径。

Python 中路径写法关键看你是想让代码在任何位置都能运行(推荐用绝对路径逻辑),还是只在当前目录下临时测试(可用相对路径)。但要注意:Python 本身没有“绝对路径语法”和“相对路径语法”的区别,只有字符串写法不同,真正起作用的是你如何构造这个字符串。

相对路径怎么写

相对路径以当前工作目录(不是脚本所在目录)为起点。比如你在终端进入 /home/user/project 后运行 python script.py,那当前工作目录就是这个路径。

绝对路径怎么写(安全写法)

硬写 "/home/user/project/data/file.txt""C:\\Users\\Name\\project\\data.txt" 看似是绝对路径,但会严重限制代码移植性——换台电脑就报错。真正可靠的“绝对路径”,是基于脚本位置动态生成的:

这样得到的路径,永远相对于脚本文件本身,不依赖你从哪启动 Python。

别踩坑:当前工作目录 ≠ 脚本所在目录

很多人误以为 open("data.txt") 是找脚本同目录的文件,其实它找的是你运行命令时所在的目录。比如:

所以除非你明确控制运行位置,否则少用纯相对路径字符串操作文件。

读取资源文件的小技巧

如果项目有固定结构(如 myapp/ 下有 src/data/),建议统一用脚本位置为基准构建路径:

这样整个项目挪到别的机器或路径,只要内部结构不变,就完全不用改路径代码。

基本上就这些。核心就一条:别靠人眼拼路径,用 pathlib.Path 动态算,既清晰又可靠。