PYTHON文件操作笔记
PYTHON文件操作笔记
一、文件处理
1.文件读取
f = open(file = 'D:/工作日常/联系方式.txt',mode = 'r',encoding = 'utf-8')
data = f.read()
f.close()
file 表示文件的路径
mode = 'r' 表示只读
encoding 表示编码格式
mode = 'rb' 的时候表示用二进制形式读取出来
假如不知道文件是什么编码怎么办呢?
import chardet
f = open('log',mode = 'rb')
data = f.read()
f.close()
res = chardet.detect(open('log',mode = 'rb').read())
print(res)
2.循环文件
f = open('联系方式.txt','r',encoding = 'gbk'
for line in f:
print(line)
f.close()
3.写文件
f = open(file = 'D:/联系方式.txt',mode = 'w',encoding = 'utf-8'
f.write('你想输入的内容')
f.close()
二进制模式写是mode = 'wb'
4.追加
把内容追加到文件尾部
f = open('联系方式.txt','a',encoding = 'gbk'
f.write('\n小黄 北京 ...')
f.close()
文件操作时,以'a'或'ab'模式打开,则只能追加
5.读写混合
f = open('联系方式.txt','r+',encoding='gbk')
data = f.read() #读内容
print(data)
f.write('\n black 河北 ...') #写入内容
f.close()
写读模式
f= open('联系方式.txt','w+',encoding='gbk')
data = f.read()
print(data)
f.write('\n 123')
print('content',f.read())
f.close()
6.文件操作其他功能
fileno 返回文件句柄在内核中的索引值
flush 把文件从内存buffer里强制刷新到硬盘
readable 判断是否可读
readline 只读一行,字符串
seek 把操作文件的光标移到指定位置
seekable 判断是否可以seek操作
tell 返回当前文件操作光标位置
truncate 按指定长度截断文件
writable 判断文件是否可写
7.修改文件
f = open('联系方式.txt','r+',encoding = 'utf-8')
f.seek(6)
f.write('[小黄]')
f.close()