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使用PyV8执行javascript代码示例分享
Dec 04 Python
Python开发如何在ubuntu 15.10 上配置vim
Jan 25 Python
浅谈function(函数)中的动态参数
Apr 30 Python
wxPython的安装图文教程(Windows)
Dec 28 Python
分分钟入门python语言
Mar 20 Python
Python multiprocess pool模块报错pickling error问题解决方法分析
Mar 20 Python
如何在python中写hive脚本
Nov 08 Python
Python基于当前时间批量创建文件
May 07 Python
Python是什么 Python的用处
May 26 Python
python 图像判断,清晰度(明暗),彩色与黑白实例
Jun 04 Python
详解Python中第三方库Faker
Sep 25 Python
python中函数返回多个结果的实例方法
Dec 16 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
DIY实用性框形天线
2021/03/02 无线电
php多个字符串替换成同一个的解决方法
2013/06/18 PHP
百度ping方法使用示例 自动ping百度
2014/01/26 PHP
PHP查询大量数据内存耗尽问题的解决方法
2016/10/28 PHP
php打开本地exe程序,js打开本地exe应用程序,并传递相关参数方法
2018/02/06 PHP
php+js实现点赞功能的示例详解
2020/08/07 PHP
document对象execCommand的command参数介绍
2006/08/01 Javascript
用js得到网页中所有的div的id
2020/10/19 Javascript
JavaScript时间操作之年月日星期级联操作
2016/01/15 Javascript
javascript动态获取登录时间和在线时长
2016/02/25 Javascript
Javascript基于jQuery UI实现选中区域拖拽效果
2016/11/25 Javascript
JS简单获取并修改input文本框内容的方法示例
2018/04/08 Javascript
基于bootstrap页面渲染的问题解决方法
2018/08/09 Javascript
layer.js open 隐藏滚动条的例子
2019/09/05 Javascript
python判断字符串是否包含子字符串的方法
2015/03/24 Python
Python图像灰度变换及图像数组操作
2016/01/27 Python
python中pandas.DataFrame对行与列求和及添加新行与列示例
2017/03/12 Python
Python外星人入侵游戏编程完整版
2020/03/30 Python
对python以16进制打印字节数组的方法详解
2019/01/24 Python
Python编程实现tail-n查看日志文件的方法
2019/07/08 Python
解决Django后台ManyToManyField显示成Object的问题
2019/08/09 Python
Django框架反向解析操作详解
2019/11/28 Python
python接入支付宝的实例操作
2020/07/20 Python
英国医生在线预约:Top Doctors
2019/10/30 全球购物
美国购买韩国护肤和美容产品网站:Althea Korea
2020/11/16 全球购物
波兰多品牌运动商店:StreetStyle24.pl
2020/09/22 全球购物
Can a struct inherit from another class? (结构体能继承类吗)
2014/07/22 面试题
介绍一下JMS编程步骤
2015/09/22 面试题
销售员个人求职的自我评价
2014/02/10 职场文书
销售经理岗位职责
2014/03/16 职场文书
授权委托书协议书
2014/10/16 职场文书
旷课检讨书
2015/01/26 职场文书
故宫导游词
2015/01/31 职场文书
会议主持人开场白台词
2015/05/28 职场文书
python爬取新闻门户网站的示例
2021/04/25 Python
MyBatis在注解上使用动态SQL方式(@select使用if)
2022/07/07 Java/Android