day8
文件处理:
参数:
1.文件路径
2.编码方式
3.执行动作(打开方式)只读,只写。。。
f = open('路径',encode = 'utf-8',mode = 'r')
f 文件句柄
open windows的系统功能
windows 默认编码GBK,linux默认utf - 8
流程:打开一个文件,产生一个文件句柄,对文件句柄进行操作,关闭文件。
读:
r 只读
rb 只读,以bytes类型读取(文件中有图片,视频使用)
r的5种读法
1.全部读出来 f.read()
2.一行一行读出来 f.readline()
3.将原文件的每一行作为一个列表的元素 f.readlines()
4.读取一部分 f.read(n) # r下按字符去读,rb下按字节去读
5.循环读取 for i in f:
print(i.strip())
f.close()
写:w 没有文件会创建一个文件写入内容,有文件将原文件清空在写入
wb
追加:a:没有文件创建文件追加内容,有文件直接追加内容
ab:
r+ 读写模式(先读,后追加)
关闭文件光标默认在开头
r+b 以bytes类型先读后写
w+ 写读模式,先写后读
f.write('aaa')
print(f.tell()) 按字节读取光标位置
f.seek(0) 调整光标位置
w+b
.truncate() 按指定长度截断文件,按指定长度的话,就从文件开头开始截断长度,不指定长度的话,就从当前位置到文件尾部的内容全去掉
with open ('log', encoding = 'utf-8') as f1,\
open('log1',encoding = 'utf-8') as f2:
print(f.read())
功能1:自动关闭文件句柄
功能2:可一次性操作多个文件句柄
对于文件修改:
1将原文件读取到内存
2在内存中进行修改,形成新的字符串(文件)
3将新字符串写入新文件
4将原文件删除
5将新文件重命名为原文件