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 dict remove数组删除(del,pop)
Mar 24 Python
Python实现字符串匹配算法代码示例
Dec 05 Python
详解python string类型 bytes类型 bytearray类型
Dec 16 Python
Python使用Selenium模块实现模拟浏览器抓取淘宝商品美食信息功能示例
Jul 18 Python
树莓派使用python-librtmp实现rtmp推流h264的方法
Jul 22 Python
基于python实现的百度新歌榜、热歌榜下载器(附代码)
Aug 05 Python
利用Python实现kNN算法的代码
Aug 16 Python
详解Python list和numpy array的存储和读取方法
Nov 06 Python
50行Python代码实现视频中物体颜色识别和跟踪(必须以红色为例)
Nov 20 Python
python实现按关键字筛选日志文件
Dec 24 Python
python @propert装饰器使用方法原理解析
Dec 25 Python
Restful_framework视图组件代码实例解析
Nov 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
php生成过去100年下拉列表的方法
2015/07/20 PHP
表单提交错误后返回内容消失问题的解决方法(PHP网站)
2015/10/20 PHP
php实现背景图上添加圆形logo图标的方法
2016/11/17 PHP
php获取当前url地址的方法小结
2017/01/10 PHP
PHP共享内存使用与信号控制实例分析
2018/05/09 PHP
js AppendChild与insertBefore用法详细对比
2013/12/16 Javascript
JS获取地址栏参数的几种方法小结
2014/02/28 Javascript
js中用window.open()打开多个窗口的name问题
2014/03/13 Javascript
jquery datepicker参数介绍和示例
2014/04/15 Javascript
JavaScript代码复用模式详解
2014/11/07 Javascript
jQuery 中$(this).index与$.each的使用指南
2014/11/20 Javascript
javascript上下方向键控制表格行选中并高亮显示的方法
2015/02/13 Javascript
详解前端构建工具gulpjs的使用介绍及技巧
2017/01/19 Javascript
使用jQuery实现一个类似GridView的编辑,更新,取消和删除的功能
2017/03/15 Javascript
浅谈Vue-cli 命令行工具分析
2017/11/22 Javascript
Vue3.0 响应式系统源码逐行分析讲解
2019/10/14 Javascript
python中from module import * 的一个坑
2014/07/20 Python
Python中decorator使用实例
2015/04/14 Python
python处理xml文件的方法小结
2017/05/02 Python
python3使用scrapy生成csv文件代码示例
2017/12/28 Python
Python高级特性与几种函数的讲解
2019/03/08 Python
Python实现一个数组除以一个数的例子
2019/07/20 Python
Python3.7将普通图片(png)转换为SVG图片格式(网站logo图标)动起来
2020/04/21 Python
解决pytorch 交叉熵损失输出为负数的问题
2020/07/07 Python
Python如何在bool函数中取值
2020/09/21 Python
Python求区间正整数内所有素数之和的方法实例
2020/10/13 Python
纯CSS3制作的简洁蓝白风格的登录模板(非IE效果更好)
2013/08/11 HTML / CSS
安德玛菲律宾官网:Under Armour菲律宾
2020/07/28 全球购物
大四自我鉴定范文
2013/10/06 职场文书
自动一体化专业求职信
2014/03/15 职场文书
商务英语专业大学生职业生涯规划书
2014/09/14 职场文书
水电工岗位职责
2015/02/14 职场文书
2015年女职工工作总结
2015/05/15 职场文书
法律意见书范文
2015/05/20 职场文书
青年文明号创建口号大全
2015/12/25 职场文书
新手入门Mysql--sql执行过程
2021/06/20 MySQL