文件操作
1.对一个txt文件进行读取
f = open(r'C:\Users\wangyujian\Desktop\day\day2\day2\Demo.txt', encoding='utf-8')
result = f.read()
print(result)
f.close()
2.新建一个txt文件并写入数据
f = open('C:\\Users\\wangyujian\\Desktop\\day\\day2\\day2\\Demo1.txt','w', encoding='utf-8') # w代表写入,r代表只读,只读可以不写,默认就是只读状态
a = ['wyj', '45', '89']
for i in a:
f.write(i+'\n')
f.close()
注意:绝对路径要进行转义,不然报错
扩展
1. 打开文件的模式有:
r,只读模式(默认)。
w,只写模式。【不可读;不存在则创建;存在则删除内容;】
a,追加模式。【不可读; 不存在则创建;存在则只追加内容;】
2."+" 表示可以同时读写某个文件
r+, 【可读、可写;可追加,如果打开的文件不存在的话,会报错】
w+,【写读模式,使用w+的话,已经存在的文件内容会被清空,可以读到已经写的文件内容】
a+, 【追加读写模式,不存在则创建;存在则只追加内容;】
rb
wb
ab
f = open('file.txt','r+',encoding='utf-8')#encoding参数可以指定文件的编码
f.readline()#读一行
f.readable()#判断文件是否可读
f.writable()#判断文件是否可写
f.encoding#打印文件的编码
f.read()#读取所有内容,大文件时不要用,因为会把文件内容都读到内存中,内存不够的话,会把内存撑爆
f.readlines()#读取所有文件内容,返回一个list,元素是每行的数据,大文件时不要用,因为会把文件内容都读到内存中,内存不够的话,会把内存撑爆
f.write('爱情证书')#写入内容
f.fulsh()#写入文件后,立即从内存中把数据写到磁盘中
f.truncate()#清空文件内容
f.writelines(['爱情证书','孙燕姿'])#将一个列表写入文件中
f.close()关闭文件
6.高效读取文件方法(一行一行读)
f = open('a.txt',encoding='utf-8')
for line in f:
print('每一行的内容:',line)
f.close()
f = open('test.txt','a+') # 打开文件
f.seek(0) # 将文件指针移动到起始位置
res = f.read()
new_res = res.replace('A','0') # 批量修改生成新对象
f.seek(0)
f.truncate() # 将文件指针移动到初始化位置进行删除文件全部内容
f.write(new_res) # 将新对象的内容写进文件中
f.close()