浅析使用Python操作文件


Posted in Python onJuly 31, 2017

1. file=open('xxx.txt', encoding='utf-8'),open()函数是Python内置的用于对文件的读写操作,返回的是文件的流对象(而不是文件本身,所以使用的方法都是流对象的方法)。使用这个函数时推荐指定encoding参数(Python2.7.x中好像不支持),因为Python代码在不同的平台环境中使用的默认编码方式不同,有可能会发生编译出错的问题。

2. 在open中的第一个文件名的的参数中,包含的路径表示虽然可以根据不同的环境使用斜杠和反斜杠,但在Python中表路径时,斜杠都是正确的。

3. file(流对象,open的默认模式下的返回值)的一些方法,使用for循环对file进行迭代时,每次迭代都会自动分离出一行(效果相当于对readlines结果的for循环遍历):
•file.name:获取文件的文件名(包含路径),即传入open文件名参数;
•file.encoding:获取文件的编码方式;
•file.mode:获取文件的访问方式,若没有指定这个参数,open的默认访问方式为只读“r”;
•file.closed:返回文件是否关闭的状态;
•file.close():关闭文件(使用完一定及时使用这个函数关闭文件);
•file.read():从当前定位(一般就是文件开始处)获取文件内容,返回整个文件内容的字符串(此时定位在文件尾,若再使用read()方法,会返回空字符串,因为已经到文件尾了),若指定了需要获取的 字符 数(可以给read方法传入参数,比如:read(3)表示从当前定位往后读取3个字符),则返回指定字符数的字符串。注意不能从一个字符的中间字节处读取,因为有的字符(比如中文)的表示不止一个字节,而定位是以字节来计算位置的,read()是以字符来计数的;
•file.seek(n):使定位到特定 字节 处(若使用read()方法读完文件后还想再读取一次文件,可以使用seek(0)重新定位到文件开始处再读取);
•file.tell():返回当前定位的字节位置;
•file.readline():读取文件中的一行,并定位到下一行的开始处;
•file.readlines():读取文件中的所有行,返回所有行为元素组成的列表;

4. 使用open进行文件操作使建议使用with创建运行环境,可以不用close()方法关闭文件,无论在文件使用中遇到什么问题都能安全的退出,即使发生错误,退出运行时环境时也能安全退出文件并给出报错信息。

# 使用with创建运行时环境
with open('xxx.text', encoding='utf-8') as file:
  file_content = file.read()
  file.seek(0)
  file_ten_characters = file.read(10)
  print(file_content)
  print(file_ten_characters) #执行完with中的代码后自动退出运行时环境
Python 相关文章推荐
python实现的系统实用log类实例
Jun 30 Python
Python语法快速入门指南
Oct 12 Python
Python 函数基础知识汇总
Mar 09 Python
树莓派实现移动拍照
Jun 22 Python
Flask框架钩子函数功能与用法分析
Aug 02 Python
python 循环数据赋值实例
Dec 02 Python
python ImageDraw类实现几何图形的绘制与文字的绘制
Feb 26 Python
Python进程间通信multiprocess代码实例
Mar 18 Python
python中关于数据类型的学习笔记
Jul 19 Python
Python安装并操作redis实现流程详解
Oct 13 Python
Ubuntu20.04环境安装tensorflow2的方法步骤
Jan 29 Python
python状态机transitions库详解
Jun 02 Python
Python字典实现简单的三级菜单(实例讲解)
Jul 31 #Python
Python中read()、readline()和readlines()三者间的区别和用法
Jul 30 #Python
深入探究Django中的Session与Cookie
Jul 30 #Python
python中numpy包使用教程之数组和相关操作详解
Jul 30 #Python
利用Python批量压缩png方法实例(支持过滤个别文件与文件夹)
Jul 30 #Python
Python利用BeautifulSoup解析Html的方法示例
Jul 30 #Python
利用python获取当前日期前后N天或N月日期的方法示例
Jul 30 #Python
You might like
Terran兵种对照表
2020/03/14 星际争霸
php date()日期时间函数详解
2010/05/16 PHP
PHP中spl_autoload_register()和__autoload()区别分析
2014/05/10 PHP
PHP使用GIFEncoder类处理gif图片实例
2014/07/01 PHP
php实现 master-worker 守护多进程模式的实例代码
2019/07/20 PHP
JS backgroundImage控制
2009/05/19 Javascript
jquery拖动插件(jquery.drag)使用介绍
2013/06/18 Javascript
javascript history对象(历史记录)使用方法(实现浏览器前进后退)
2014/01/07 Javascript
Javascript实现可旋转的圆圈实例代码
2015/08/04 Javascript
学习JavaScript设计模式之责任链模式
2016/01/18 Javascript
浅谈node的事件机制
2017/10/09 Javascript
解决koa2 ctx.render is not a function报错问题
2018/08/07 Javascript
VUE安装使用教程详解
2019/06/03 Javascript
vue data变量相互赋值后被实时同步的解决步骤
2020/08/05 Javascript
google广告之另类js调用实现代码
2020/08/22 Javascript
[01:19:46]DOTA2-DPC中国联赛 正赛 SAG vs DLG BO3 第一场 2月28日
2021/03/11 DOTA
python实现bitmap数据结构详解
2014/02/17 Python
Python的净值数据接口调用示例分享
2016/03/15 Python
Linux RedHat下安装Python2.7开发环境
2017/05/20 Python
Python数据可视化正态分布简单分析及实现代码
2017/12/04 Python
ubuntu安装sublime3并配置python3环境的方法
2018/03/15 Python
python3 kmp 字符串匹配的方法
2018/07/07 Python
websocket+sockjs+stompjs详解及实例代码
2018/11/30 HTML / CSS
Desigual德国官网:在线购买原创服装
2018/03/27 全球购物
英国领先的游戏零售商:GAME
2019/09/24 全球购物
环境科学专业个人求职的自我评价
2013/11/28 职场文书
电子信息专业自荐书
2014/02/04 职场文书
毕业生应聘求职信
2014/07/10 职场文书
政府个人对照检查材料思想汇报
2014/10/08 职场文书
销售内勤岗位职责
2015/02/10 职场文书
学习保证书100字
2015/02/26 职场文书
2015年“七七卢沟桥事变”纪念活动总结
2015/03/24 职场文书
2015最新民情日记范文
2015/06/26 职场文书
python Polars库的使用简介
2021/04/21 Python
Python万能模板案例之matplotlib绘制甘特图
2022/04/13 Python
Linux中sftp常用命令整理
2022/06/28 Servers