大爽Python入门教程 5-4 文件路径之相对路径与绝对路径

大爽Python入门公开课教案 点击查看教程总目录

本章第三节 文件读写中的open(file, mode)中的file,严格来讲是文件路径,而不只是文件名。

一般来讲,尽量保证代码文件,和要读取的文件在同一文件夹下。
因为此时代码里面读取文件,文件路径可以直接使用文件名(带后缀名的)。

如果文件和代码不在一文件夹下,就相对比较麻烦。

假设要读取的文件叫做001.txt,之后简称文件
代码文件叫demo5.py,之后简称代码
以下分情况讨论,

1 相对路径

当文件和代码的相对关系固定时,可以使用相对路径。

文件上级文件夹和代码平级

如下所示

root
|---demo5.py
|---text
    |---001.txt

此时代码里面读取文件
file应该写为text/001.txt

进一步地,如果文件上级文件夹的上级文件夹和代码平级。
如下所示

root
|---demo5.py
|---files
    |---text
        |---001.txt

此时代码里面读取文件
file应该写为files/text/001.txt

此情况衍生情况同理

代码上级文件夹和文件平级

如下所示

root
|---001.txt
|---codes
    |---demo5.py

此时代码里面读取文件
file应该写为../001.txt

进一步地,如果代码上级文件夹的上级文件夹和文件平级。
如下所示

root
|---001.txt
|---codes
    |---simple
        |---demo5.py

此时代码里面读取文件
file应该写为../../001.txt

此情况衍生情况同理

复合情况

此时使用上面两种语法,联合处理。

比如代码上级文件夹和文件的上级文件夹平级。
如下

root
|---text
    |---001.txt
|---codes
    |---demo5.py

此时代码里面读取文件
file应该写为../text/001.txt

绝对路径

文件位置本身基本不发生变化的时候,可以使用绝对路径。
比如假设计算机的D盘里有一个projects文件夹,
projects文件夹下有一个lesson5文件夹,
lesson5文件夹下有一个001.txt文件。

此时001.txt的绝对路径为
D://projects/lesso5/001.txt

补充,硬盘下面文件夹的绝对路径写法为:
硬盘名 + :// + 文件夹名

对比

绝对路径也可称完整路径,是指向文件系统中某个固定位置的路径,不会因当前的工作目录而产生变化。为做到这点,它必须包括根目录。

相对路径则是以指定的工作目录作为基点,避开提供完整的绝对路径。文件名称就可以被视为以指定工作目录为基点的一个相对路径(虽然一般不将其称之为路径)。

posted @ 2021-11-23 18:15  大爽歌python编程辅导  阅读(333)  评论(0编辑  收藏  举报