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 相关文章推荐
python网络编程学习笔记(九):数据库客户端 DB-API
Jun 09 Python
在Django中使用Sitemap的方法讲解
Jul 22 Python
Django日志模块logging的配置详解
Feb 14 Python
Django中login_required装饰器的深入介绍
Nov 24 Python
tensorflow输出权重值和偏差的方法
Feb 10 Python
python保存文件方法小结
Jul 27 Python
Python代码打开本地.mp4格式文件的方法
Jan 03 Python
python多线程分块读取文件
Aug 29 Python
Python3实现二叉树的最大深度
Sep 30 Python
pandas和spark dataframe互相转换实例详解
Feb 18 Python
如何快速理解python的垃圾回收机制
Sep 01 Python
Python自定义sorted排序实现方法详解
Sep 18 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
全国FM电台频率大全 - 18 湖南省
2020/03/11 无线电
PHP文件操作实现代码分享
2011/09/01 PHP
PHP生成静态HTML页面最简单方法示例
2015/04/09 PHP
分享php多功能图片处理类
2016/05/15 PHP
浅谈PHP匿名函数和闭包
2019/03/08 PHP
PHP正则之正向预查与反向预查讲解与实例
2020/04/06 PHP
Javascript insertAfter() 实现函数代码
2011/10/12 Javascript
学习从实践开始之jQuery插件开发 对话框插件开发
2012/04/26 Javascript
javaScript函数中执行C#代码中的函数方法总结
2013/08/07 Javascript
离开当前页面前使用js判断条件提示是否要离开页面
2014/05/02 Javascript
js实现div层缓慢收缩与展开的方法
2015/05/11 Javascript
使用jQuery5分钟快速搞定双色表格的简单实例
2016/08/08 Javascript
javaScript中定义类或对象的五种方式总结
2016/12/04 Javascript
WebPack基础知识详解
2017/01/16 Javascript
基于Vue实现后台系统权限控制的示例代码
2017/08/29 Javascript
JS立即执行函数功能与用法分析
2019/01/15 Javascript
如何优雅的在一台vps(云主机)上面部署vue+mongodb+express项目
2019/01/20 Javascript
Vue 组件修改根实例的数据的方法
2019/04/02 Javascript
JS中实现浅拷贝和深拷贝的代码详解
2019/06/05 Javascript
微信小程序在text文本实现多种字体样式
2019/11/08 Javascript
[06:04]DOTA2英雄梦之声Vol19卓尔游侠
2014/06/20 DOTA
python实现转盘效果 python实现轮盘抽奖游戏
2019/01/22 Python
python matplotlib实现双Y轴的实例
2019/02/12 Python
windows10下安装TensorFlow Object Detection API的步骤
2019/06/13 Python
Python 实现自动导入缺失的库
2019/10/29 Python
Python socket实现的文件下载器功能示例
2019/11/15 Python
New Balance波兰官方商城:始于1906年,百年慢跑品牌
2017/08/15 全球购物
Mankind美国/加拿大:英国领先的男士美容护发用品公司
2018/12/05 全球购物
房地产员工找工作的自我评价
2013/11/15 职场文书
大型活动策划方案
2014/01/12 职场文书
物流专业自荐信
2014/05/23 职场文书
小学教师读书活动总结
2014/07/08 职场文书
县人大领导班子四风对照检查材料思想汇报
2014/10/09 职场文书
烛光里的微笑观后感
2015/06/17 职场文书
结婚司仪主持词
2015/06/29 职场文书
Nginx禁止ip访问或非法域名访问
2022/04/07 Servers