文件读写,死活记不住的我。。。
Posted hedy-x
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了文件读写,死活记不住的我。。。相关的知识,希望对你有一定的参考价值。
打开文件
f=open(‘test‘,a+,encoding=‘utf-8‘)
文件的各种方法
- f.seek(0)#移动文件指针到0,只对读好使,对写不好使
- f.read()#读取文件的所有内容
- f.tell()#查看文件指针的位置
- f.readline()#读取一行内容,在写一个readline从第二行开始在读取一行
- f.readlines()#读取所有内容,内容放在list里面,每一行是一个元素;有换行符
- f.write(‘www‘)#写入文件,必须是字符串
- f.writelines(names)#传入的是可迭代的对象,如list,元组,字符串
- f.truncate()#清空文件
- f.close()#关闭文件
r/w/a缺点
- 只要有r,文件不存在的时候,打开都会报错
- 只要有w,就会把文件清空
- 追加a,不能读
- 最好使用追加读写 a+
高效文件处理方法
for f in fw:
f = f.strip()
new_f = f.split(‘,‘)
#[‘xx‘,‘xx‘,‘xxx‘]
#[‘xx‘,‘xx‘,‘xxx‘]
一样的方式
f=open(‘a.txt‘,‘w‘,encoding=‘utf-8‘
names = [‘a‘,‘b‘,‘c‘]
for name in names:
f.write(name)
#等于下面
f.writelines(names)
f.close()
f.flush()#把缓冲区的内容立刻写入磁盘
另外一种打开文件的方式
- with open(‘a.txt‘,‘w‘) as f,open(‘b.txt‘,‘w‘) as f1:
- 这种方式可以打开多个文件
二进制模式
- f = open(‘1.png‘,‘rb‘) #bytes是以二进制模式打开 rb wb
下载图片
import requests
url=‘xxxxx‘
img = requests.get(url).content
f = open(‘tuxiang.jpg‘,‘wb‘)#以二进制的模式打开
f.write(img)
f.close
文件修改
思想:打开源文件和备份文件,将修改的内容写到第二个文件中,然后删除原文件,重命名第二个文件
import os with open(‘one‘,‘a+‘,encoding=‘utf-8‘) as f,open(‘two‘,‘a+‘,encoding=‘utf-8‘) as f1:
f.seek(0)
for line in f:
new_line=line.replace(‘a‘,‘b‘)
f1.write(new_line)
f1.flush()
os.remove(‘one‘)
os.rename(‘two‘,‘one‘
以上是关于文件读写,死活记不住的我。。。的主要内容,如果未能解决你的问题,请参考以下文章