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实现strcmp函数功能示例
Mar 25 Python
python处理图片之PIL模块简单使用方法
May 11 Python
python list排序的两种方法及实例讲解
Mar 20 Python
Python实现将一个大文件按段落分隔为多个小文件的简单操作方法
Apr 17 Python
Python学习小技巧之列表项的拼接
May 20 Python
解决PyCharm中光标变粗的问题
Aug 05 Python
对numpy中array和asarray的区别详解
Apr 17 Python
利用Python实现在同一网络中的本地文件共享方法
Jun 04 Python
Python3+django2.0+apache2+ubuntu14部署网站上线的方法
Jul 07 Python
python程序运行进程、使用时间、剩余时间显示功能的实现代码
Jul 11 Python
Python输出指定字符串的方法
Feb 06 Python
用python读取xlsx文件
Dec 17 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
模拟OICQ的实现思路和核心程序(二)
2006/10/09 PHP
php面向对象全攻略 (七) 继承性
2009/09/30 PHP
PHP中执行cmd命令的方法
2014/10/11 PHP
php中strtotime函数用法详解
2014/11/15 PHP
PHP获取当前日期和时间及格式化方法参数
2015/05/11 PHP
php版微信自动获取收货地址api用法示例
2016/09/22 PHP
gearman管理工具GearmanManager的安装与php使用方法示例
2020/02/27 PHP
去除链接虚线全面分析总结
2006/08/15 Javascript
jQuery 获取URL参数的插件
2010/03/04 Javascript
写了10年的Javascript也未必全了解的连续赋值运算
2011/03/25 Javascript
Node.js的Express框架使用上手指南
2016/03/12 Javascript
JavaScript继承学习笔记【新手必看】
2016/05/10 Javascript
Node.js中process模块常用的属性和方法
2016/12/13 Javascript
EasyUI折叠表格层次显示detailview详解及实例
2016/12/28 Javascript
JavaScript与Java正则表达式写法的区别介绍
2017/08/15 Javascript
用vue构建多页面应用的示例代码
2017/09/20 Javascript
vue父组件向子组件动态传值的两种方法
2017/11/11 Javascript
原生JS实现的简单小钟表功能示例
2018/08/30 Javascript
D3.js(v3)+react 实现带坐标与比例尺的柱形图 (V3版本)
2019/05/09 Javascript
vue+element树组件 实现树懒加载的过程详解
2019/10/21 Javascript
js实现图片无缝循环轮播
2019/10/28 Javascript
js实现移动端吸顶效果
2020/01/08 Javascript
python监控网站运行异常并发送邮件的方法
2015/03/13 Python
Python高级特性切片(Slice)操作详解
2018/09/27 Python
Python基本类型的连接组合和互相转换方式(13种)
2019/12/16 Python
微软英国官方网站:Microsoft英国
2016/10/15 全球购物
海蓝之谜(LA MER)澳大利亚官方商城:全球高端奢华护肤品牌
2017/10/27 全球购物
汽车运用工程专业毕业生推荐信
2013/12/25 职场文书
写得不错的求职信范文
2014/07/11 职场文书
幼儿园教师节演讲稿
2014/09/03 职场文书
私营公司诉讼代理委托书范本
2014/09/13 职场文书
小学秋季运动会报道稿
2014/09/30 职场文书
社区植树节活动总结
2015/02/06 职场文书
党支部意见范文
2015/06/02 职场文书
2016年元旦致辞
2015/08/01 职场文书
vue中this.$http.post()跨域和请求参数丢失的解决
2022/04/08 Vue.js