文件操作的一般内容:
# 文件的操作
# 打开文件 open 打开已存在文件 或者创建一个新文件
open('./Test.txt','w')
# 文件的操作
# 打开文件 open 打开已存在文件 或者创建一个新文件
fobj=open('./Test.txt','w') #将其传递个=给一个对象 通过对象来对其进行操作
# 开始操作 读/写操作
fobj.write('在苍茫的大海上 有一群海鸟')
fobj.close() #保存加关闭
# 文件的操作
# 打开文件 open 打开已存在文件 或者创建一个新文件
fobj=open('./Test.txt','w') #将其传递个=给一个对象 通过对象来对其进行操作
# 开始操作 读/写操作
# fobj.write('在苍茫的大海上 有一群海鸟')
fobj.write('冲破风浪') #文件存在 会被覆盖
fobj.close() #保存加关闭
# 文件的操作
# 打开文件 open 打开已存在文件 或者创建一个新文件
# 默认的编码是gbk 中文编码 最好的习惯就是我们在打开一个文件的时候 指定一个编码
# 给他一个编码类型
fobj=open('./Test.txt','w',encoding='utf-8') #将其传递个=给一个对象 通过对象来对其进行操作
# 开始操作 读/写操作
fobj.write('在苍茫的大海上 有一群海鸟')
fobj.write('冲破风浪') #文件存在 会被覆盖
fobj.close() #保存加关闭
# 以二进制的形式去写数据
fobj=open('Test.txt','wb') #str——>bytes
fobj.write('再无运河大海之间'.encode('utf-8'))
fobj.close()
fobj=open('./Test.txt','w')
fobj.write('在苍茫的大海上 有一群海鸟')
fobj.write('冲破风浪') #文件存在 会被覆盖
fobj=open('Test.txt','a') #追加
fobj.write('在乌云和大海之间')
fobj.close()
# 读数据操作
f=open('Test.txt','r')
# print(f.read()) #从头到尾全部读出
print(f.read(10)) #指定读取的数量
print(f.read()) #第一行为加参数读取到的,其余行输出
f=open('Test.txt','rb')
data=f.read()
print(data)
print(data.decode('gbk'))
f.close() #文件对象需要关闭
# with上下文管理对象
# 优点 自动释放打开关联的对象
with open('Test.txt','r') as f:
print(f.read())
小结
文件读写的集中操作方式
read r r+ rb rb+
r r+ 只读 适用于普通的读取场景
rb rb+ 适用于 文件 图片 视频 音频 这样的文件读取
write w w+ wb+ wb a ab
w wb+ w+ 每次都去创建文件
二进制读写的时候 注意编码问题 默认为gbk
a a+ ab 在原有的文件上追加 并不会创建新的文件