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编程中一些重用与缩减的建议
Apr 14 Python
Python常见加密模块用法分析【MD5,sha,crypt模块】
May 24 Python
Python实现按学生年龄排序的实际问题详解
Aug 29 Python
python 列表,数组,矩阵两两转换tolist()的实例
Apr 04 Python
python在回调函数中获取返回值的方法
Feb 22 Python
Python如何实现转换URL详解
Jul 02 Python
python异常处理之try finally不报错的原因
May 18 Python
详解pandas.DataFrame.plot() 画图函数
Jun 14 Python
django rest framework 过滤时间操作
Jul 12 Python
Python如何给函数库增加日志功能
Aug 04 Python
python字符串常规操作大全
May 02 Python
Python常遇到的错误和异常
Nov 02 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
叶罗丽:为什么大家对颜冰这对CP非常关心,却对金茉两人十分冷漠
2020/03/17 国漫
编写漂亮的代码 - 将后台程序与前端程序分开
2008/04/23 PHP
PHP中使用glob函数实现一句话删除某个目录下的所有文件
2014/07/22 PHP
ThinkPHP之用户注册登录留言完整实例
2014/07/22 PHP
jquery的map与get方法详解
2013/11/04 Javascript
Extjs grid添加一个图片状态或者按钮的方法
2014/04/03 Javascript
jquery滚动加载数据的方法
2015/03/09 Javascript
nodejs导出excel的方法
2015/06/30 NodeJs
JS实现pasteHTML兼容ie,firefox,chrome的方法
2016/06/22 Javascript
移动端日期插件Mobiscroll.js使用详解
2016/12/19 Javascript
js+canvas实现动态吃豆人效果
2017/03/22 Javascript
关于jquery form表单序列化的注意事项详解
2017/08/01 jQuery
浅谈Node.js 子进程与应用场景
2018/01/24 Javascript
完美解决axios在ie下的兼容性问题
2018/03/05 Javascript
详解es6超好用的语法糖Decorator
2018/08/01 Javascript
vue组件之间的数据传递方法详解
2019/04/19 Javascript
简单了解vue.js数组的常用操作
2019/06/17 Javascript
vue图片加载失败时用默认图片替换的方法
2019/08/29 Javascript
JavaScript setTimeout()基本用法有哪些
2020/11/04 Javascript
vue-axios同时请求多个接口 等所有接口全部加载完成再处理操作
2020/11/09 Javascript
[15:15]教你分分钟做大人:狙击手
2014/10/30 DOTA
Python 过滤字符串的技巧,map与itertools.imap
2008/09/06 Python
Python实现的一个简单LRU cache
2014/09/26 Python
python转换字符串为摩尔斯电码的方法
2015/07/06 Python
Python实现的登录验证系统完整案例【基于搭建的MVC框架】
2019/04/12 Python
python爬虫要用到的库总结
2020/07/28 Python
python em算法的实现
2020/10/03 Python
印度网上药店:1mg
2017/10/13 全球购物
德国家用电器购物网站:Premiumshop24
2019/08/22 全球购物
eHarmony英国:全球领先的认真恋爱约会平台之一
2020/11/16 全球购物
爱护花草树木的标语
2014/06/11 职场文书
工作粗心大意检讨书
2014/09/18 职场文书
电工实训报告总结
2014/11/05 职场文书
商场营业员岗位职责
2015/04/14 职场文书
2015年九一八事变纪念活动实施方案
2015/05/06 职场文书
学校教师培训工作总结
2015/10/14 职场文书