一 文件操作步骤
1 打开文件,得到文件的句柄并赋值
2 通过句柄对文件进行操作
3 关闭文件
文件操作的实质是:读取文件到内存中,可以在内存中查看、修改、复制等操作,若是对文件进行了重新修改删除等操作,则是重新写入硬盘中,并不是在原硬盘文件上操作!
二 文件操作实例
1 读取文件
如上:文件读取操作主要有以上函数readable():查询文件是否可以读取 readline():读取文件一行,以换行标志结束 readlines()读取所有的内存,包含换行,存放在一个列表中。 read()默认读取所有的字符,若是带参数如read(10)表示读取10个字符
2 写文件操作
如上:write()操作是向文件写入字符串,写的必须是字符串,writeable()查询文件是否可写,writelines()写入的内容是列表,列表中内存是字符串元素
3 追加模式操作
如上:a表示在源文件基础上进行写操作。
另外除了’r’,‘w’,‘a’模式外还有‘x’模式,x模式与w模式不同之处主要有x是写操作源文件不存在,则报错,而w不存在则创建,若存在源文件内容都清空。
‘r+’模式是以读的方式打开,可以进行写操作
‘w+’模式是写写的方式打开,可以进行读操作
‘a+’模式是以追加的模式打开,可以进行读操作
‘b’模式是表示以二进制的形式进行读写,如‘rb’,‘rb+’,‘wb’,‘wb+‘等操作,默认操作是以文本的形式操作。
winddow系统主要有文本和二进制(字节)的形式操作,底层的实质是把文本字符串转换为二进制,而linux系统均是以二进制形式操作
二进制操作不用指定编码
f = open(‘测试‘,‘rb’)
4 二进制操作
二进制操作方式中不能指定编码,同时注意window系统中回车换行为 ,linux系统中为
文本字符串—–》encode——–>二进制编码
二进制编码—–》decode——–>文本字符串
进行二进制编码的方式有:
‘字符串’.encode(‘utf-8’)
bytes(‘字符串’,encoding=‘utf-8’)
对二进制进行解码的方式有:
‘二进制编码’.decode(‘utf-8’)
5 文件其他操作函数总结
read(3)代表读取3个字符,其余的文件内光标移动都是以字节为单位的如seek,tell,read,truncate操作
f.flush()#把文件内容从内存刷到硬盘中,起到实时保存的作用。
f.closed#文件如果关闭,则返回True
f.encoding#查看使用open打开文件的编码格式,注意并不是文件的实际编码格式
f.tell #查看文件处理当前的光标位置
f.seek(3)#从头开始运算,将光标移动到第三个字节
f.truncate(10)#从头开始运算,将文件只保留从0-10个字节的内容,文件必须是以写的方式打开,但是‘w’和‘w+’除外。
6 seek方法的高级应用
seek共有2个参数,第一个参数为光标个数,第二个参数默认为0,默认为0时,光标个数是从头开始计数的。
当第二个参数为1时,则光标相对从从上一次的位置操作开始。
当第二个参数为2时,则光标倒着开始计数,例如f.seek(-5,2)表示从尾向前数5个字符开始读取
例,读取操作日志的最后一行。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/168292.html