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 相关文章推荐
Python3基础之基本数据类型概述
Aug 13 Python
python实现上传样本到virustotal并查询扫描信息的方法
Oct 05 Python
Python多线程编程(四):使用Lock互斥锁
Apr 05 Python
Python中对象的引用与复制代码示例
Dec 04 Python
python实现简单http服务器功能
Sep 17 Python
Python函数中参数是传递值还是引用详解
Jul 02 Python
解决python flask中config配置管理的问题
Jul 26 Python
Python数据分析pandas模块用法实例详解
Nov 20 Python
pandas分批读取大数据集教程
Jun 06 Python
Python爬虫UA伪装爬取的实例讲解
Feb 19 Python
python实战之90行代码写个猜数字游戏
Apr 22 Python
Python自动化之批量处理工作簿和工作表
Jun 03 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使用gettimeofday函数返回当前时间并存放在关联数组里
2015/03/19 PHP
基于PHP实现数据分页显示功能
2016/05/26 PHP
网页开发中的容易忽略的问题 javascript HTML中的table
2009/04/15 Javascript
Prototype Array对象 学习
2009/07/19 Javascript
IE8 下的Js错误HTML Parsing Error...
2009/08/14 Javascript
JQuery 返回布尔值Is()条件判断方法代码
2012/05/14 Javascript
js格式化金额可选是否带千分位以及保留精度
2014/01/28 Javascript
jQuery通过控制节点实现仅在前台通过get方法完成参数传递
2015/02/02 Javascript
JavaScript获取页面上被选中文字的方法技巧
2015/03/13 Javascript
JS+CSS实现TreeMenu二级树形菜单完整实例
2015/09/18 Javascript
Bootstrap每天必学之导航条(二)
2016/03/01 Javascript
jquery if条件语句的写法
2016/05/19 Javascript
JS判断iframe是否加载完成的方法
2016/08/03 Javascript
JavaScript类的写法
2016/09/17 Javascript
vue.js开发环境安装教程
2017/03/17 Javascript
解决vue.js在编写过程中出现空格不规范报错的问题
2017/09/20 Javascript
用Object.prototype.toString.call(obj)检测对象类型原因分析
2018/10/11 Javascript
微信小程序中遇到的iOS兼容性问题小结
2018/11/14 Javascript
[04:28]2014DOTA2国际邀请赛 采访小兔子LGD挺进钥匙体育馆
2014/07/14 DOTA
python切换hosts文件代码示例
2013/12/31 Python
python 多进程通信模块的简单实现
2014/02/20 Python
Windows环境下python环境安装使用图文教程
2018/03/13 Python
Python 实现两个列表里元素对应相乘的方法
2018/11/14 Python
几行Python代码爬取3000+上市公司的信息
2019/01/24 Python
Pycharm学生免费专业版安装教程的方法步骤
2020/09/24 Python
html5 制作地图当前定位箭头的方法示例
2020/01/10 HTML / CSS
英国第一的购买便宜玩具和游戏的在线购物网站:Bargain Max
2018/01/24 全球购物
Lancer Skincare官方网站:抗衰老皮肤护理
2020/11/20 全球购物
优秀护士获奖感言
2014/02/20 职场文书
社区先进事迹材料
2014/05/19 职场文书
环境保护标语
2014/06/20 职场文书
党员对十八届四中全会的期盼思想汇报范文
2014/10/17 职场文书
预防职务犯罪警示教育心得体会
2016/01/15 职场文书
为自由献出你的心脏!「进击的巨人展 FINAL」2022年6月在台开展
2022/04/13 日漫
GO语言异常处理分析 err接口及defer延迟
2022/04/14 Golang
服务器SVN搭建图文安装过程
2022/06/21 Servers