首页 > 其他 > 详细

文件处理基础篇

时间:2020-11-25 22:50:24      阅读:35      评论:0      收藏:0      [点我收藏+]

一、文件操作的基本流程

1.1 基本流程

1. 打开文件,由应用程序向操作系统发起系统调用open(...),操作系统打开该文件,对应一块硬盘空间,并返回一个文件对象赋值给一个变量f
f=open(‘a.txt‘,‘r‘,encoding=‘utf-8‘) #默认打开模式就为r

2. 调用文件对象下的读/写方法,会被操作系统转换为读/写硬盘的操作
data=f.read()

3. 向操作系统发起关闭文件的请求,回收系统资源
f.close()

技术分享图片

1.2 资源回收与with上下文管理
打开一个文件包含两部分资源:应用程序的变量f和操作系统打开的文件。在操作完毕一个文件时,必须把与该文件的这两部分资源全部回收,回收方法为:

1、f.close() #回收操作系统打开的文件资源
2、del f #回收应用程序级的变量

其中del f一定要发生在f.close()之后,否则就会导致操作系统打开的文件无法关闭,白白占用资源, 而python自动的垃圾回收机制决定了我们无需考虑del f,这就要求我们,在操作完毕文件后,一定要记住f.close(),虽然我们如此强调,但是大多数读者还是会不由自主地忘记f.close(),考虑到这一点,python提供了with关键字来帮我们管理上下文

1、在执行完子代码块后,with 会自动执行f.close()
with open(‘a.txt‘,‘w‘) as f:
    pass 

2、可用用with同时打开多个文件,用逗号分隔开即可
with open(‘a.txt‘,‘r‘) as read_f,open(‘b.txt‘,‘w‘) as write_f:  
    data = read_f.read()
    write_f.write(data)

1.3 指定操作文本文件的字符编码

f = open(...)是由操作系统打开文件,如果打开的是文本文件,会涉及到字符编码问题,如果没有为open指定编码,那么打开文本文件的默认编码很明显是操作系统说了算了,操作系统会用自己的默认编码去打开文件,在windows下是gbk,在linux下是utf-8。
若要保证不乱码,文件以什么方式存的,就要以什么方式打开。

f = open(‘a.txt‘,‘r‘,encoding=‘utf-8‘)

三、文件的操作模式
2.1 控制文件读写操作的模式
2.1.1 案例一:r 模式的使用
2.1.2 案例二:w 模式的使用
2.1.3 案例三:a 模式的使用
2.1.4 案例四:+ 模式的使用(了解)
2.2 控制文件读写内容的模式
2.2.1 案例一:t 模式的使用
2.2.2 案例二: b 模式的使用
四、操作文件的方法
3.1 重点
3.2 了解
五、主动控制文件内指针移动
4.1 案例一: 0模式详解
4.2 案例二: 1模式详解
4.3 案例三: 2模式详解
六、文件的修改
5.1 文件修改方式一
5.1 文件修改方式二

文件处理基础篇

原文:https://www.cnblogs.com/qiukangle/p/14038726.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!