Python读写文件模式和文件对象方法实例详解


Posted in Python onSeptember 17, 2019

本文实例讲述了Python读写文件模式和文件对象方法。分享给大家供大家参考,具体如下:

一. 读写文件模式

利用open() 读写文件时,将会返回一个 file 对象,其基本语法格式如:  open ( filename, mode)

其中,filename变量是一个包含了你要访问的文件名称的字符串值。而mode决定了你打开文件的模式:只读,写入,追加等。所有可取值见如下的完全列表。

注:这个参数是非强制的,默认文件访问模式为只读模式(r)

Python读写文件模式和文件对象方法实例详解

例如,我们现在将一个字符串写入到test.txt文件中,其中test.txt的存储位置为: "E:/orig_data/test.txt" ,

具体操作如下:

#=============================================================================
#打开一个文件
file = open("E:/orig_data/test.txt" ,"w")
file.write("Python是一个很好的语言,和MATLAB一样简单好用!")
#关闭打开的文件
file.close()
#文件使用完毕后必须关闭,因为文件对象会占用操作系统的资源,并且操作系统同一时间能打开的文
#件数量也是有限的

#为了简化操作,一般我们采用如下方式:
with open("E:/orig_data/test.txt" ,"w") as file:
 file.write("Python是一个很好的语言,和MATLAB一样简单好用!")
 
#读取该文件时
with open("E:/orig_data/test.txt" ,"r") as file:
 print(file.read())
#============================================================================

写入后得到的文件test.txt文件为:

Python读写文件模式和文件对象方法实例详解

在Python读取文件的结果:

Python读写文件模式和文件对象方法实例详解

如果我们在写入文本后,直接立马打印则会出现以下结果:

#=============================================================================
#打开一个文件
file = open("E:/orig_data/test.txt" ,"w")
num = file.write("Python是一个很好的语言,和MATLAB一样简单好用!")
print(num)
#关闭打开的文件
file.close()
#=============================================================================

结果输出的是数字:29,即输出的是双引号内写入字符的个数。

如果我们写入了非字符的文本,则需要现将其进行转换,然后在写入:

#=============================================================================
#打开一个文件
file = open("E:/orig_data/test.txt" ,"w")
value = ("ww.baidu.com",28)
s = str(value)
file.write(s)
#关闭打开的文件
file.close()
#=============================================================================

输出的结果为:

("ww.baidu.com",28)

二. 文件对象的方法

在已有可读取的文件的前提下,读文件的读取方法进行总结:

1. f.read()

为了读取一个文件的内容,调用 f.read(size), 这将读取一定数目的数据, 然后作为字符串或字节对象返回。size 是一个可选的数字类型的参数。 当 size 被忽略了或者为负, 那么该文件的所有内容都将被读取并且返回。

#============================================================================
#读取文件
file = open("E:/orig_data/test.txt" ,"r")
str = file.read()
print(str)
file.close()
#为了简化操作
with open("E:/orig_data/test.txt" ,"r") as file:
 print(file.read())
#===========================================================================

打印的结果:

Python读写文件模式和文件对象方法实例详解

2. f.readline()

f.readline() 会从文件中读取单独的一行。换行符为 '\n'。

f.readline() 如果返回一个空字符串, 说明已经已经读取到最后一行。

#==========================================================================
#为了简化操作,一般我们采用如下方式:
with open("E:/orig_data/test.txt" ,"w") as file:
 file.write("Python是一个很好的语言,和MATLAB一样简单好用。\n是的,的确如此!") 
#============================================================================
#读取文件
file = open("E:/orig_data/test.txt" ,"r")
str = file.readline()
print(str)
file.close()
#为了简化操作
with open("E:/orig_data/test.txt" ,"r") as file:
 print(file.readline())
#===========================================================================

文件读取的结果:

Python读写文件模式和文件对象方法实例详解

说明:写入了两行文本,但是结果只读取了一行,即按行读取的结果。如果想要读取全部文本,可利用for循环,逐行读取,如

#==========================================================================
#为了简化操作,一般我们采用如下方式:
with open("E:/orig_data/test.txt" ,"w") as file:
 file.write("Python是一个很好的语言,和MATLAB一样简单好用。\n是的,的确如此!") 
#============================================================================
#读取文件
file = open("E:/orig_data/test.txt" ,"r")
for line in file:
 print(line, end=' ')
file.close()
#===========================================================================

读取的结果:

Python读写文件模式和文件对象方法实例详解

注:这个方法很简单, 但是并没有提供一个很好的控制。因此实际中更多的我们建议利用f.readlines()来读取。

3. f.readlines()

f.readlines() 将返回该文件中包含的所有行。

如果设置可选参数 sizehint, 则读取指定长度的字节, 并且将这些字节按行分割。

#==========================================================================
#为了简化操作,一般我们采用如下方式:
with open("E:/orig_data/test.txt" ,"w") as file:
 file.write("Python是一个很好的语言,和MATLAB一样简单好用。\n是的,的确如此!") 
#============================================================================
#读取文件
file = open("E:/orig_data/test.txt" ,"r")
str = file.readlines()
print(str)
file.close()
#为了简化操作
with open("E:/orig_data/test.txt" ,"r") as file:
 print(file.readlines())
#===========================================================================

文件读取的结果:

Python读写文件模式和文件对象方法实例详解

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
pycharm 使用心得(三)Hello world!
Jun 05 Python
Python中内建函数的简单用法说明
May 05 Python
Python使用dict.fromkeys()快速生成一个字典示例
Apr 24 Python
对python 中re.sub,replace(),strip()的区别详解
Jul 22 Python
Flask使用Pyecharts在单个页面展示多个图表的方法
Aug 05 Python
详解python播放音频的三种方法
Sep 23 Python
python GUI库图形界面开发之PyQt5工具栏控件QToolBar的详细使用方法与实例
Feb 28 Python
Python基于QQ邮箱实现SSL发送
Apr 26 Python
python中JWT用户认证的实现
May 18 Python
如何使用Pytorch搭建模型
Oct 26 Python
python实现批量提取指定文件夹下同类型文件
Apr 05 Python
Python基础详解之邮件处理
Apr 28 Python
Python爬取破解无线网络wifi密码过程解析
Sep 17 #Python
Python使用random模块生成随机数操作实例详解
Sep 17 #Python
python同时替换多个字符串方法示例
Sep 17 #Python
python 函数的缺省参数使用注意事项分析
Sep 17 #Python
Python 字符串、列表、元组的截取与切片操作示例
Sep 17 #Python
Python 实现大整数乘法算法的示例代码
Sep 17 #Python
Python对接 xray 和微信实现自动告警
Sep 17 #Python
You might like
PHP5.3与5.5废弃与过期函数整理汇总
2014/07/10 PHP
Jquery数独游戏解析(一)-页面布局
2010/11/05 Javascript
jQuery如何实现点击页面获得当前点击元素的id或其他信息
2014/01/09 Javascript
Javascript基础教程之数据类型 (字符串 String)
2015/01/18 Javascript
jQuery中extend函数详解
2015/02/13 Javascript
JS表格组件神器bootstrap table详解(强化版)
2016/05/26 Javascript
javaScript事件机制兼容【详细整理】
2016/07/23 Javascript
详解Node.js中的事件机制
2016/09/22 Javascript
利用jquery禁止外层滚动条的滚动
2017/01/05 Javascript
js实现简单的计算器功能
2017/01/16 Javascript
JavaScript无缝滚动效果的实例代码
2017/03/27 Javascript
node+koa2+mysql+bootstrap搭建一个前端论坛
2018/05/06 Javascript
nodejs如何在package.json中设置多条启动命令
2020/03/16 NodeJs
[40:29]2018DOTA2亚洲邀请赛 4.7总决赛 LGD vs Mineski 第一场
2018/04/10 DOTA
python 快速排序代码
2009/11/23 Python
Python Web框架Flask下网站开发入门实例
2015/02/08 Python
Python中字符串格式化str.format的详细介绍
2017/02/17 Python
Django 开发环境配置过程详解
2019/07/18 Python
Python3基本输入与输出操作实例分析
2020/02/14 Python
python脚本定时发送邮件
2020/12/22 Python
CSS3 渐变(Gradients)之CSS3 线性渐变
2016/07/08 HTML / CSS
美国最大点评网站:Yelp
2018/02/14 全球购物
Belvilla德国:在线预订度假屋
2018/04/10 全球购物
加拿大大码女装购物网站:Penningtons
2020/12/26 全球购物
史上最全面的Java面试题汇总!
2015/02/03 面试题
秋季校运动会广播稿
2014/02/23 职场文书
3.12植树节活动总结2014
2014/03/13 职场文书
永远跟党走演讲稿
2014/09/12 职场文书
护士工作失误检讨书
2014/09/14 职场文书
大学生万能检讨书范例
2014/10/04 职场文书
小学国庆节活动总结
2015/03/23 职场文书
专项资金申请报告
2015/05/15 职场文书
超市店长竞聘书
2015/09/15 职场文书
2016年乡镇综治宣传月活动总结
2016/03/16 职场文书
如何拟写通知正文?
2019/04/02 职场文书
python基于机器学习预测股票交易信号
2021/05/25 Python