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实现的二叉树算法和kmp算法实例
Apr 25 Python
初学Python函数的笔记整理
Apr 07 Python
Python操作MongoDB数据库PyMongo库使用方法
Apr 27 Python
python使用Image处理图片常用技巧分析
Jun 01 Python
Python实现1-9数组形成的结果为100的所有运算式的示例
Nov 03 Python
Python编程实现从字典中提取子集的方法分析
Feb 09 Python
python读取excel指定列数据并写入到新的excel方法
Jul 10 Python
基于python求两个列表的并集.交集.差集
Feb 10 Python
python传到前端的数据,双引号被转义的问题
Apr 03 Python
Keras 数据增强ImageDataGenerator多输入多输出实例
Jul 03 Python
Python爬虫设置ip代理过程解析
Jul 20 Python
python 实现压缩和解压缩的示例
Sep 22 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
php zend解密软件绿色版测试可用
2008/04/14 PHP
选择PHP作为网站开发语言的原因分享
2012/01/03 PHP
解决laravel groupBy 对查询结果进行分组出现的问题
2019/10/09 PHP
表单元素的submit()方法和onsubmit事件应用概述
2013/02/01 Javascript
JSON传递bool类型数据的处理方式介绍
2013/09/18 Javascript
JS原型对象的创建方法详解
2016/06/16 Javascript
prototype.js常用函数详解
2016/06/18 Javascript
JSON与XML的区别对比及案例应用
2016/11/11 Javascript
bootstrap动态添加面包屑(breadcrumb)及其响应事件的方法
2017/05/25 Javascript
详解react关于事件绑定this的四种方式
2018/03/09 Javascript
关于vue中的ajax请求和axios包问题
2018/04/19 Javascript
Node.js的Koa实现JWT用户认证方法
2018/05/05 Javascript
nodejs之koa2请求示例(GET,POST)
2018/08/07 NodeJs
微信小程序实现用table显示数据库反馈的多条数据功能示例
2019/05/07 Javascript
Vue函数式组件-你值得拥有
2019/05/09 Javascript
微信小程序修改数组长度的问题的解决
2019/12/17 Javascript
微信小程序实现弹框效果
2020/05/26 Javascript
vue穿梭框实现上下移动
2021/01/29 Vue.js
python 不关闭控制台的实现方法
2011/10/23 Python
python3.6使用pickle序列化class的方法
2018/10/22 Python
在Python中调用Ping命令,批量IP的方法
2019/01/26 Python
通过python改变图片特定区域的颜色详解
2019/07/15 Python
Django+uni-app实现数据通信中的请求跨域的示例代码
2019/10/12 Python
解决Tensorflow 内存泄露问题
2020/02/05 Python
python 实现线程之间的通信示例
2020/02/14 Python
基于Python生成个性二维码过程详解
2020/03/05 Python
Django自关联实现多级联动查询实例
2020/05/19 Python
selenium+python自动化78-autoit参数化与批量上传功能的实现
2021/03/04 Python
7款设计巧妙的css3飘带状3D立体效果的导航菜单和表单窗口
2013/02/04 HTML / CSS
纯CSS实现菜单、导航栏的3D翻转动画效果
2014/04/23 HTML / CSS
HTML5超文本标记语言的实现方法
2020/09/24 HTML / CSS
软件设计的目标是什么
2016/12/04 面试题
JDBC操作数据库的基本流程是什么
2014/10/28 面试题
诉讼代理人授权委托书
2014/04/08 职场文书
2015年全国助残日活动方案
2015/05/04 职场文书
Python爬虫中urllib3与urllib的区别是什么
2021/07/21 Python