python 读写txt文件 json文件的实现方法


Posted in Python onOctober 22, 2016

首先第一步,打开文件,有两个函数可供选择:open() 和  file()

①. f = open('file.txt',‘w')
   ...
 file.close()  

 ②. f = file('file.json','r')
   ...

file.close()#记得打开文件时最后不要忘记关闭!

open() 和 file() 都是Python的内建函数,返回一个文件对象,具有相同的功能,可以任意替换。使用语法为:

f = open(fileName, access_mode='r', buffering=-1)

第1个参数是文件名, 2,3参数有默认值,参数2 决定了是以读的方式‘r' ?还是写的方式‘w' ?抑或别的方式打开文件。

打开的方式有:

r —— 读 ; w —— 写 ; a —— 追加,从EOF开始写,即在文件末尾写

r+  w+  a+  ——  都是以读写方式打开

rb —— 二进制 读 ; wb —— 二进制 写 ;rb+  wb+  ab+ —— 二进制读写

例子:

fp = open('C:\Users\MPC\Desktop\说明.txt')# 默认以读的方式打开

fp = open('test.txt','w')# 写方式打开

fp = open('data.json','a')#追加方式打开

第二步,对文件进行操作

当得到文件对象这个句柄以后(如例子中的fp),就可对文件进行操作了。

文件对象的内建操作方法有:输入,输出,文件内移动,以及杂项操作

1.  输入 

函数:  read(),readline(),readlines()

将文件中的内容读入 到 一个字符串变量/列表 中

read() :  读取整个文件到字符串变量中

例子:

fp = open('C:\Users\MPC\Desktop\说明.txt')

all_file = fp.read()

read()有一个可选的size参数,默认为-1,表示文件将会被读至末尾(EOF)

readline() :读取打开文件中的一行,然后返回整行包括行结束符到 字符串变量中

readline()也有一个可选的参数size,默认-1,表示读至行结束符停止

readlines() : 读取整个文件,返回一个 字符串列表 ,列表中的每个元素都是一个字符串,代表一行

例子:

fp = open('C:\Users\MPC\Desktop\说明.txt')

lines = fp.readlines()

for line in lines:

...

fp.close()

或者 第2 3 行 简写为:for line in fp.readlines():

在python2.3之后由于迭代器和文件迭代(即文件对象成为了他们自己的迭代器)的引入,

上例有一种更高效的实现方式:

fp = open('C:\Users\MPC\Desktop\说明.txt')

for line in fp:

...

fp.close()

推荐使用这种方法!

2.  输出

函数:write() , writelines()

将字符串/列表 输出到文件中

write() : 将字符串输出到文件

>>>f= open('test.txt','w')

>>>f.write('Helloworld!')

>>>f.close()

>>>f= open('test1.txt','w')

>>>f.write('Welcome\nto\n China!')

>>>f.close()

>>>f= open('test1.txt','w')

>>>f.write('Welcome\nto\n China!')

>>>f.close()

writelines():  将字符串列表 写入 文件,注意行结束符并不会自动被加入,如果需要,必须手动在每行的结尾加入行结束符。

什么意思呢?  看下例:

>>>s= ['你好','伙计']

>>>f= open('test.txt','w')

>>>f.writelines(s)

>>>f.close()

>>>s= ['你好\n','伙计']

>>>f= open('test.txt','w')

>>>f.writelines(s)

>>>f.close()

>>>f = open(r'I:\python\test.txt','w')

>>>f.write('First line\n')

>>>f.write('Second line\n')

>>>f.write('Third line\n')

>>>f.close()

>>>lines = list(open(r'I:\python\test.txt'))

>>>lines

['Firstline\n', 'Second line\n', 'Third line\n']

>>>first,second,third = open(r'I:\python\test.txt')

>>>first

'Firstline\n'

>>>second

'Secondline\n'

>>>third

'Thirdline\n'

3. 文件内移动

函数: seek() tell()

seek() :移动文件读取指针到制定的位置

tell():   返回文件读取指针的位置

seek()的三种模式:

(1)f.seek(p,0)  移动当文件第p个字节处,绝对位置

(2)f.seek(p,1)  移动到相对于当前位置之后的p个字节

(3)f.seek(p,2)  移动到相对文章尾之后的p个字节

以上就是小编为大家带来的python 读写txt文件 json文件的实现方法全部内容了,希望大家多多支持三水点靠木~

Python 相关文章推荐
python中模块的__all__属性详解
Oct 26 Python
python快速建立超简单的web服务器的实现方法
Feb 17 Python
python使用phoenixdb操作hbase的方法示例
Feb 28 Python
django之状态保持-使用redis存储session的例子
Jul 28 Python
解决TensorFlow GPU版出现OOM错误的问题
Feb 03 Python
TensorFlow:将ckpt文件固化成pb文件教程
Feb 11 Python
使用python自动追踪你的快递(物流推送邮箱)
Mar 17 Python
opencv 形态学变换(开运算,闭运算,梯度运算)
Jul 07 Python
python按顺序重命名文件并分类转移到各个文件夹中的实现代码
Jul 21 Python
Python直接赋值及深浅拷贝原理详解
Sep 05 Python
python分布式爬虫中消息队列知识点详解
Nov 26 Python
Pytorch反向传播中的细节-计算梯度时的默认累加操作
Jun 05 Python
Python类属性的延迟计算
Oct 22 #Python
如何在Python函数执行前后增加额外的行为
Oct 20 #Python
如何利用Fabric自动化你的任务
Oct 20 #Python
windows下ipython的安装与使用详解
Oct 20 #Python
Python做文本按行去重的实现方法
Oct 19 #Python
Python首次安装后运行报错(0xc000007b)的解决方法
Oct 18 #Python
python类中super()和__init__()的区别
Oct 18 #Python
You might like
使用sockets:从新闻组中获取文章(一)
2006/10/09 PHP
起点页面传值js,有空研究学习下
2010/01/25 Javascript
jquery blockUI 遮罩不能消失与不能提交的解决方法
2011/09/17 Javascript
JS实现把鼠标放到链接上出现滚动文字的方法
2016/04/06 Javascript
WEB 前端开发中防治重复提交的实现方法
2016/10/26 Javascript
js前端实现多图图片上传预览的两个方法(推荐)
2016/11/18 Javascript
简单实现JavaScript图片切换效果
2016/11/28 Javascript
JavaScript制作弹出层效果
2016/12/02 Javascript
JS数组排序方法实例分析
2016/12/16 Javascript
原生JS实现图片左右轮播
2016/12/30 Javascript
jQuery实现动态添加节点与遍历节点功能示例
2017/11/09 jQuery
JS实现基于拖拽改变物体大小的方法
2018/01/23 Javascript
vue2.0 + element UI 中 el-table 数据导出Excel的方法
2018/03/02 Javascript
微信小程序新手教程之启动页的重要性
2019/03/03 Javascript
vueScroll实现移动端下拉刷新、上拉加载
2019/03/22 Javascript
解决vue 单文件组件中样式加载问题
2019/04/24 Javascript
使用vuex解决刷新页面state数据消失的问题记录
2019/05/08 Javascript
小程序跳转到的H5页面再跳转回跳小程序的方法
2020/03/06 Javascript
Element Input输入框的使用方法
2020/07/26 Javascript
详解Vue的mixin策略
2020/11/19 Vue.js
多线程爬虫批量下载pcgame图片url 保存为xml的实现代码
2013/01/17 Python
Python编程中归并排序算法的实现步骤详解
2016/05/04 Python
Python正则表达式匹配中文用法示例
2017/01/17 Python
Python和Bash结合在一起的方法
2020/11/13 Python
Django前后端分离csrf token获取方式
2020/12/25 Python
澳大利亚首屈一指的鞋类品牌:Tony Bianco
2018/03/13 全球购物
欧洲、亚洲、非洲和拉丁美洲的度假套餐:Great Value Vacations
2019/03/30 全球购物
KELLER SPORTS荷兰:在线订购最好的运动产品
2020/10/13 全球购物
副厂长岗位职责
2014/02/02 职场文书
硕士生工作推荐信
2014/03/07 职场文书
小学生母亲节演讲稿
2014/05/07 职场文书
重大事项社会稳定风险评估方案
2014/06/15 职场文书
文明上网主题班会
2015/08/14 职场文书
2019个人半年工作总结
2019/06/21 职场文书
如何书写公司员工保密协议?
2019/06/27 职场文书
redis复制有可能碰到的问题汇总
2022/04/03 Redis