Python3之文件读写操作的实例讲解


Posted in Python onJanuary 23, 2018

文件操作的步骤:

打开文件 -> 操作文件 -> 关闭文件

切记:最后要关闭文件(否则可能会有意想不到的结果)

打开文件

文件句柄 = open(‘文件路径', ‘模式')

指定文件编码

文件句柄= open(‘文件路径','模式',encoding='utf-8')

为了防止忘记关闭文件,可以使用上下文管理器来打开文件

with open(‘文件路径','模式') as 文件句柄:

打开文件的模式有:

r,只读模式(默认)。
w,只写模式。【不可读;不存在则创建;存在则删除内容;】
a,追加模式。【可读; 不存在则创建;存在则只追加内容;】
r+,可读写文件。【可读;可写;可追加】
w+,写读
“U”表示在读取时,可以将 \r \n \r\n自动转换成 \n (与 r 或 r+ 模式同使用)

rU

r+U

“b”表示处理二进制文件(如:FTP发送上传ISO镜像文件,linux可忽略,windows处理二进制文件时需标注)

rb

wb
ab

关闭文件

文件句柄.close()

操作文件:

detach

占位

fileno(返回文件描述符,用于底层操作系统的 I/O 操作)

fid = 文件句柄.fileno()

print(fid)

flush(刷新缓冲区,将缓冲区中的数据立刻写入文件)

文件句柄.flush()

isatty(判断文件是否连接到一个终端设备,返回布尔值)

文件句柄.isatty()

read(从文件中读取指定的字符数,默认读取全部)

str = 文件句柄.read() #读取整个文件
str1 = 文件句柄.read(10) #读取文件前10个字符
readable(判断文件是否可读,返回布尔值)

文件句柄.readable()

readline(每次最多读取一行数据,每行的最后包含换行符'\n')

print(文件句柄.readline()) #读取第一行数据
print(文件句柄.readline(3)) #读取第二行前3个字符
print(文件句柄.readline()) #读取第二行剩余字符
print(文件句柄.readline()) #读取第三行

seek(移动文件读取的指针,如果文件中包含中文,移动指针必须是3的倍数,不然会报错,因为一个中文字符等于3个字节)

文件句柄.seek(6)

seekable(判断文件指针是否可用,返回布尔值)

文件句柄.seekable()

tell(获取指针位置)

文件句柄.tell()

truncate(截断,把指针后面的内容删除,并写入文件,要在可写模式下操作)

f = open(‘text.txt','r+',encoding='utf-8')
f.seek(9) #把指针移动到第9个字节后面(即第3个中文后面)
f.truncate() #把第3个中文后面的字符删除,并写入文件
f.close()

writable(判断文件是否可写,返回布尔值)

文件句柄.writable()

write(把字符串写入文件,并返回字符数)

文件句柄.write(‘字符串')

Python 相关文章推荐
python通过自定义isnumber函数判断字符串是否为数字的方法
Apr 23 Python
Python中pandas dataframe删除一行或一列:drop函数详解
Jul 03 Python
Python命名空间的本质和加载顺序
Dec 17 Python
python实现逐个读取txt字符并修改
Dec 24 Python
Pyinstaller打包.py生成.exe的方法和报错总结
Apr 02 Python
Python实现 PS 图像调整中的亮度调整
Jun 28 Python
Pycharm如何导入python文件及解决报错问题
May 10 Python
python按顺序重命名文件并分类转移到各个文件夹中的实现代码
Jul 21 Python
基于opencv的selenium滑动验证码的实现
Jul 24 Python
使用Python获取爱奇艺电视剧弹幕数据的示例代码
Jan 12 Python
如何使用Python提取Chrome浏览器保存的密码
Jun 09 Python
Python中的tkinter库简单案例详解
Jan 22 Python
Python实现邮件的批量发送的示例代码
Jan 23 #Python
python实现自动发送邮件发送多人、群发、多附件的示例
Jan 23 #Python
python正则表达式面试题解答
Apr 28 #Python
Django中使用celery完成异步任务的示例代码
Jan 23 #Python
python3 发送任意文件邮件的实例
Jan 23 #Python
Python程序员面试题 你必须提前准备!(答案及解析)
Jan 23 #Python
Python实现PS图像明亮度调整效果示例
Jan 23 #Python
You might like
php图片添加文字水印实现代码
2016/03/15 PHP
PHP安装GeoIP扩展根据IP获取地理位置及计算距离的方法
2016/07/01 PHP
CI框架(CodeIgniter)实现的导入、导出数据操作示例
2018/05/24 PHP
PHP htmlentities()函数用法讲解
2019/02/25 PHP
用jquery等比例控制图片宽高的具体实现
2014/01/28 Javascript
将中国标准时间转换成标准格式的代码
2014/03/20 Javascript
jquery实现鼠标滑过小图时显示大图的方法
2015/01/14 Javascript
如何使用HTML5地理位置定位功能
2015/04/27 Javascript
Jqgrid之强大的表格插件应用
2015/12/02 Javascript
js计算时间差代码【包括计算,天,时,分,秒】
2016/04/26 Javascript
JavaScript函数柯里化详解
2016/04/29 Javascript
前端设计师们最常用的JS代码汇总
2016/09/25 Javascript
js实现各种复制到剪贴板的方法(分享)
2016/10/27 Javascript
javascript中的深复制详解及实例分析
2016/12/29 Javascript
jQuery插件FusionCharts实现的2D饼状图效果【附demo源码下载】
2017/03/03 Javascript
vue 监听键盘回车事件详解 @keyup.enter || @keyup.enter.native
2018/08/25 Javascript
解决JQuery的ajax函数执行失败alert函数弹框一闪而过问题
2019/04/10 jQuery
微信小程序-可移动菜单的实现过程详解
2019/06/24 Javascript
Python编写登陆接口的方法
2017/07/10 Python
Tensorflow中使用tfrecord方式读取数据的方法
2018/06/19 Python
python解释器pycharm安装及环境变量配置教程图文详解
2020/02/26 Python
Python LMDB库的使用示例
2021/02/14 Python
eBay爱尔兰站:eBay.ie
2019/08/09 全球购物
What's the difference between an interface and abstract class? (接口与抽象类有什么区别)
2012/10/29 面试题
工作室成员个人发展规划范文
2014/01/24 职场文书
设计师求职信模板
2014/05/06 职场文书
运动会演讲稿100字
2014/08/25 职场文书
党员评议个人总结
2014/10/20 职场文书
团员自我评价范文
2015/03/10 职场文书
拖欠货款起诉状
2015/05/20 职场文书
投诉信格式范文
2015/07/02 职场文书
2015年学校办公室主任工作总结
2015/07/20 职场文书
经销商会议开幕词
2016/03/04 职场文书
读完《骆驼祥子》的观后感!
2019/07/05 职场文书
三十年再续同学情倡议书
2019/11/27 职场文书
Python面向对象编程之类的概念
2021/11/01 Python