python绝对路径_code小知识~工作路径、绝对路径、相对路径

工作路径

工作路径是伴随着进程或者当前运行程序而存在的,表示该进程或者运行程序是在哪个路径下被打开的。比如下面这个例子在 “E:\juzicode” 路径下运行cmd命令行,则该cmd命令行的工作目录就是提示符”>”之前表示的路径:

87d46c1325dd4831d598a38b93cd42f2.png

在这个路径下如果打开某个进程,比如启动一个python解释器,当前python进程的工作路径就是该命令行启动时所在的工作路径,可以用os.getcwd()获取到,下面这个例子中是在”E:\juzicode”下启动python的,所以用os.getcwd()获取的当前工作路径就是“E:\juzicode”,需要注意如果用当前工作路径拼接路径时,当前工作路径的最后一个斜杠“\”是没有的,需要手动添加:

4d2163d5ad6bd2fdd8ce45748b70bc3b.png

绝对路径

Windows下绝对路径就是指包含从盘符开始的完整路径,这个比较好理解,比如 E:\juzicode\com 就是一条绝对路径。

相对路径

相对路径有一个“相对”的对象就是当前工作路径,要搞清楚相对路径先要明白当前工作路径。如果在cmd命令行下调试,提示符“>”之前的这段字符就是当前工作路径。当前工作路径的基础上,使用”..\\”(上一层目录)组合出来的路径就是一种相对路径,直接看个例子,在路径 E:\juzicode\com 下的文件夹结构是这样的:

b13bf416c93670ee2e0ad46bd7521dca.png

假设当前工作路径在E:\juzicode\com\1\2\3\4\5\,需要用TYPE命令打印出 E:\juzicode\com\1\2a目录下readme.txt的文件内容,看下如果用相对路径怎么表示,因为2a目录在 E:\juzicode\com\1\ 之下,所以需要用连续4个“..\”从 E:\juzicode\com\1\2\3\4\5\ 回到 E:\juzicode\com\1\ 之下,然后再加入2a\组合出要访问的路径:

7eaea0aa23a36d38167b0c851c76dbfa.png

同样的,如果是在“E:\juzicode\com\1\2\3\4\5”路径下打开python解释器,要读取“E:\juzicode\com\1\2a”路径下的readme.txt文件,就可以使用相对路径”..\..\..\..\2a\readme.txt”打开文件:

96d5bbf9df4fcabdc70f98903fab8369.png

当然我们也可以用绝对路径“E:\juzicode\com\1\2a\readme.txt”来打开文件,但是使用绝对路径有个问题就是如果整体移动com文件夹到其他的路径下,绝对路径就会失效。另外一个例子就是在VS等工程文件的配置中,使用相对路径的方式可移植性就要更好些。

4542da6765edb4c9a0af0954bb7bc61b.png

---EOF---


推荐阅读:

奇文共欣赏~UTF-8设计与源码实现

pyautogui: 有了Python键盘鼠标都可以省着用了

你可听说熊猫(pandas)也会画图?

好冷的Python~默认参数、可变对象和不可变对象

编码: 一个隐藏了30多年的bug,Windows含蓄说过某通不行?



关注微信公众号"桔子code",不错过更多精彩。

a6cd2fdc9ac7445bdcf62d6fa99b3613.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值