python文件读写的六种模式,相对路径和绝对路径

前面在介绍文件读写操作的基本方法中,我们所举的例子当中打开文件的方式分别是“w”只写和“r”只读两种模式,这一章节,我们来具体介绍文件读写的六种模式。


python文件读写模式表

模式描述
r只读,默认模式,文件不存在则报错;
w只写,如果文件不存在,则根据路径新建文件,并写入,如果文件已经存在,则写入的内容覆盖原内容;
a追加,如果文件不存在,则新建文件,并写入,如果文件已存在,会在文件的末尾追加写入,就像列表中的append()函数;
x新建,如果文件存在就报错,不存在则新建文件,并写入,这样就可以避免存在的文件内容被覆盖的麻烦;
rb、wb、ab只读、只写、追加的二进制模式,以bytes类型操作数据;
r+、w+、a+读写模式,既能读取也能写入,文件存不存在的规则与上面的类似;

上面模式的实例跟前面介绍python文件读写操作的实例都大同小异,大家可以自己去尝试一下,摸索一下,看看效果如何。


相对路径和绝对路径

如果你已经对文件的相对路径和绝对路径有了充分的了解,那么该标题下的这些内容可以略过。

相对路径

相对路径:是以当前的文件为参照物的情况下,其他文件的路径。简而言之,就是你当前所处的计算机位置,比如D盘,那么从这里开始一直到找到你所要找到目标文件的路径,比如,我们所要运行的py文件在“D:\python\pymode\test.py”,其中“D:\python\pymode\”为test.py文件所在的目录,test为文件名,.py为扩展名,那么要打开跟test.py同级目录,也就是在同一个文件夹里头的文件data.txt,可以用如下代码:

f = open('data.txt', 'r', encoding='utf-8')

打开同级目录文件夹下的文件,比如打开pymode文件夹中的文件夹pymode_a当中的data2.txt文件,代码如下:

f = open('./pymode_a/data2.txt', 'w', encoding='utf-8')

打开上一级目录的文件,比如打开pymode文件夹的上一个文件夹python当中的data3.txt文件,代码如下:

f = open('../data3.txt', 'w', encoding='utf-8')

同样的道理,打开上一级目录文件夹中的文件夹下的文件,比如打开pymode文件夹上一级目录python中的文件夹pyclass当中的bigdata.txt文件,代码如下:

f = open('./pyclass/bigdata.txt', 'w', encoding='utf-8')

绝对路径

绝对路径自然是相对于相对路径而言的,其特点是从0开始找到目标文件的路径,比如将上面的几个路径用绝对路径可表示成下面几种方式:

D:\python\pymode\test.py

D:\python\pymode\data.txt

D:\python\pymode\pymode_a\data2.txt

D:\python\data3.txt

D:\python\pyclass\bigdata.txt

python文件的读写就暂时介绍到这里,后面的大数据和机器学习当中会有较多实例,下一章节我们将介绍python的另一大重要内容——面向对象编程。


全栈后端 / python教程 :


























Copyright © 2022-2024 笨鸟工具 x1y1z1.com All Rights Reserved.