文件

一.文件的打开与操作

1.文件的打开

文件的打开有许多种模式,如'r'(以只读方式打开) , 'r+'(打开一个文件用于读写) , 'w'(打开一个文件只用于写入),'w+'(打开一个文件用于读写),'a'(打开一个文件用于追加),'a+'(打开一个文件用于追加并读取),这些模式都是以字符串的方式打开
而如'rb','wb','ab','wb+',这些模式都是以二进制的方式打开,可用于爬虫

拿'r'举例
#打开文件
f = open('test.txt','r')
#读取内容
print(f.read())#可读取test.txt内的内容
#关闭文件
f.close

2.文件操作

文件的操作方式有read,werite,readline,readlines,writeline,writelines,tell(获取指针位置),seek(调整指针位置),flush

拿read与write举例
f = open('文件test.txt','w+')
f.write('hello world')#写入
print(f.tell())#可以看到指针在末尾
f.seek(0)#调整指针位置到0
print(f.tell())#可以看到指针位置在最前面,此时可打印文件全部内容
print(f.read())
f.close()

3.with open(文件名,'打开方式') as 变量名

此方式可自动关闭文件
如:

with open('文件test.txt','w+') as f:
    print(f.read())
    f.writelines(['1\n','2','3'])#writelines与readlines分别以列表的方式写入与写出
    f.seek(0)
    print(f.read())

4.编码处理

with open(r'test2.txt','w',encoding='utf-8') as f:
    f.write('哈哈......')#通过utf-8的方式写入

with open(r'test2.txt',encoding='ascii',errors='ignore') as f1:
    print(f1.read())#通过ascii的方式读取,用errors='ignore'的方式忽略报错,则输出'......'

二.临时文件

有StringIO(临时字符串文件)与BytesIO(临时存二进制的文件)两种临时文件

import io
a = io.StringIO()#创建临时字符串文件
a.write('hello python')
a.seek(0)
print(a.read())
a.close()#此时临时文件不存在了

BytesIO与StringIO操作方式类同,可通过b'字符串'将字符串转为二进制

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容