Python中文件操作简明介绍


Posted in Python onApril 13, 2015

打开文件

open函数返回一个文件对象,基本语法:

●file_object = open(file_name, access_mode='r'[,buffering=-1])
file_name 是包含要打开的文件名字的字符串, 它可以是相对路径或者绝对路径.
●可选变量access_mode 也是一个字符串, 代表文件打开的模式. 通常, 文件使用模式 ‘r', ‘w', 或是 ‘a'模式来打开, 分别代表读取, 写入和追加.
●另外一个可选参数 buffering 用于指示访问文件所采用的缓冲方式. 其中 0 表示不缓冲, 1表示只缓冲一行数据, 任何其它大于 1 的值代表使用给定值作为缓冲区大小. 不提供该参数或者给定负值代表使用系统默认缓冲机制

文件内建方法

读出

read(size) 方法用来直接读取字节到字符串中, 最多读取给定数目个字节.如果size没有给定,文件将被全部读出.
readline() 方法读取打开文件的一行,和 read() 相同, 它也有一个可选的 size 参数, 默认为 -1, 代表读至行结束符. 如果提供了该参数, 那么在超过 size 个字节后会返回不完整的行.
readlines() 它会读取所有(剩余的)行然后把它们作为一个字符串列表返回.

写入

write()写入字符.
writelines()写入行.这里注意需要显示写入换行符.

文件内移动

seek(offset)移动当前读写位置到指定的offset位置.每次write和read操作后,当前读写位置都会变动.

文件迭代

新方法(更高效)

for eachLine in f

老的方法:
for eachLine in f.readline():

关闭文件

close() 通过关闭文件来结束对它的访问.写入文件后不关闭文件可能会丢失缓冲区数据.

缓冲区数据写入文件

flush() 方法会直接把内部缓冲区中的数据立刻写入文件.

截取文件

truncate() 方法将文件截取到当前文件指针位置或者到给定 size , 以字节为单位.

实例讲解

#!/usr/bin/python

#coding=utf-8
#以写方式打开一个名为welcome.txt文件

f = open("welcome.txt", 'w')
#将数据写入文件

f.writelines("welcome to here\n")

f.writelines("Thank you\n")

f.writelines("exit\n")
#刷新文件

f.flush()
#关闭文件

f.close()
#以读方式打开一个名为welcome.txt文件

f = open("welcome.txt", 'r')

print f.read(8)
#重置读写位置,回到文件最开始位置

f.seek(0)

print f.readline()

输出
welcome 

welcome to here
Python 相关文章推荐
跨平台python异步回调机制实现和使用方法
Nov 26 Python
理解python多线程(python多线程简明教程)
Jun 09 Python
python中argparse模块用法实例详解
Jun 03 Python
python下实现二叉堆以及堆排序的示例
Sep 29 Python
python使用zip将list转为json的方法
Dec 31 Python
python替换字符串中的子串图文步骤
Jun 19 Python
基于pytorch的lstm参数使用详解
Jan 14 Python
关于PyCharm安装后修改路径名称使其可重新打开的问题
Oct 20 Python
Python爬虫自动化获取华图和粉笔网站的错题(推荐)
Jan 08 Python
Python机器学习之KNN近邻算法
May 14 Python
python如何利用traceback获取详细的异常信息
Jun 05 Python
python+opencv实现视频抽帧示例代码
Jun 11 Python
Python单元测试框架unittest简明使用实例
Apr 13 #Python
进一步了解Python中的XML 工具
Apr 13 #Python
Python中的模块和包概念介绍
Apr 13 #Python
Python多线程编程简单介绍
Apr 13 #Python
Python中的面向对象编程详解(下)
Apr 13 #Python
简单介绍利用TK在Python下进行GUI编程的教程
Apr 13 #Python
Python中的面向对象编程详解(上)
Apr 13 #Python
You might like
解析百度搜索结果link?url=参数分析 (全)
2012/10/09 PHP
JavaScript基本对象
2007/01/11 Javascript
AutoSave/自动存储功能实现
2007/03/24 Javascript
实现点击列表弹出列表索引的两种方式
2013/03/08 Javascript
JavaScript监听和禁用浏览器回车事件实例
2015/01/31 Javascript
JavaScript 异常处理 详解
2015/02/06 Javascript
jquery原理以及学习技巧介绍
2015/11/11 Javascript
jQuery基于cookie实现的购物车实例分析
2015/12/24 Javascript
Vue组件和Route的生命周期实例详解
2018/02/10 Javascript
Element-ui自定义table表头、修改列标题样式、添加tooltip、:render-header使用
2019/04/11 Javascript
微信小程序+腾讯地图开发实现路径规划绘制
2019/05/22 Javascript
ZK中使用JS读取客户端txt文件内容问题
2019/11/07 Javascript
Vue 实现简易多行滚动"弹幕"效果
2020/01/02 Javascript
ES6学习教程之Promise用法详解
2020/11/22 Javascript
python应用程序在windows下不出现cmd窗口的办法
2014/05/29 Python
用Python制作简单的朴素基数估计器的教程
2015/04/01 Python
python实现自动发送报警监控邮件
2018/06/21 Python
解决python读取几千万行的大表内存问题
2018/06/26 Python
python实现集中式的病毒扫描功能详解
2019/07/09 Python
Windows平台Python编程必会模块之pywin32介绍
2019/10/01 Python
Python selenium环境搭建实现过程解析
2020/09/08 Python
使用Python实现NBA球员数据查询小程序功能
2020/11/09 Python
pandas map(),apply(),applymap()区别解析
2021/02/24 Python
购买中国最好的电子产品:Geekbuying
2018/03/13 全球购物
C#如何允许一个类被继承但是避免这个类的方法被重载?
2015/02/24 面试题
办公室保洁员岗位职责
2013/12/02 职场文书
早餐连锁店计划书
2014/01/08 职场文书
财务部经理岗位职责
2014/02/03 职场文书
全国优秀辅导员事迹材料
2014/05/14 职场文书
设计专业自荐信
2014/06/19 职场文书
护士自荐信范文
2015/03/25 职场文书
2015年信息中心工作总结
2015/05/25 职场文书
企业愿景口号
2015/12/25 职场文书
redis配置文件中常用配置详解
2021/04/14 Redis
解决Maven项目中 Invalid bound statement 无效的绑定问题
2021/06/15 Java/Android
Go语言基础知识点介绍
2021/07/04 Golang