今天回顾一下之前学的文件操作相关知识点,对于文件的操作,主要有一下几部分构成:
一、文件的基础知识
1.文件操作的基本流程
文件操作其实可以分成三大部分:
1.打开文件,获取文件句柄并赋予一个变量
2.通过句柄对文件进行读与写的操作
3.操纵完毕后,关闭文件
下面是一个具体的示例程序:
1.操作完成后自动关闭文件的
with open(‘db’,'r')as f:
data = f.read() #一次性将文件中的内容读从磁盘上加载到内存里面
data = f.readline() #每次只读取一行数据
data = f,write() #对文件进行写入的操作
2.需要手动关闭文件的
f = open('db','r')
f.read() #对文件进行读取的操作
f.close() #关闭文件
2. 文件的打开模式
文件打开的格式: 文件句柄 = open('文件路径', '模式')
打开文件时,需要指定文件路径和以何等方式打开文件,打开后,即可获取该文件句柄,日后通过此文件句柄对该文件操作。
打开文件的模式有:
r ,只读模式【默认模式,文件必须存在,不存在则抛出异常】
w,只写模式【不可读;不存在则创建;存在则清空内容】
x, 只写模式【不可读;不存在则创建,存在则报错】
a, 追加模式【可读; 不存在则创建;存在则只追加内容】
"+" 表示可以同时读写某个文件
r+, 读写【可读,可写】
w+,写读【可读,可写】
x+ ,写读【可读,可写】
a+, 写读【可读,可写】
"b"表示以字节的方式操作
rb 或 r+b
wb 或 w+b
xb 或 w+b
ab 或 a+b
注:以b方式打开时,读取到的内容是字节类型,写入时也需要提供字节类型,不能指定编码。
文件操作的实例:
importtime
with open('db','r')as f:
#line = f.read() #一次性输出到内存中等待调用
#line = f.readline() #每次只能输出一行到内存中
#line = f.readlines() #以列表的形式输出到内存中,每一行都是列表中的一个元素(换行符也是输出的)
#line = f.readlines()#以列表的形式输出到内存中,每一行都是列表中的一个元素(换行符也是输出的)
for line in f: #通过for 循环来实现一行行的输出,并且取消文件中每一行的换行符操作
data =line.strip()
time.sleep(1)
print(data)
文件读写操作的常用模式:
with open('db','w')as f:#w模式就是以覆盖的方式写入
f.write('dafkhfkk')
with open('db','a')as f:
f.write('我是总') #a模式就是以追加的方式写入(只能写到文件的尾部)
r或rt 默认模式,文本模式读
rb 二进制文件
w或wt 文本模式写,打开前文件存储被清空
wb 二进制写,文件存储同样被清空
a 追加模式,只能写在文件末尾
a+可读写模式,写只能写在文件末尾
w+ 可读写,与a+的区别是要清空文件内容
r+ 可读写,与a+的区别是可以写到文件任何位置
3.open函数详解&#