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中的标识运算符
May 14 Python
tensorflow实现简单的卷积网络
May 24 Python
python 判断三个数字中的最大值实例代码
Jul 24 Python
Python实现TCP探测目标服务路由轨迹的原理与方法详解
Sep 04 Python
基于python3监控服务器状态进行邮件报警
Oct 19 Python
Python如何使用argparse模块处理命令行参数
Dec 11 Python
Python模块的制作方法实例分析
Dec 21 Python
基于torch.where和布尔索引的速度比较
Jan 02 Python
Pandas时间序列:时期(period)及其算术运算详解
Feb 25 Python
python多进程使用函数封装实例
May 02 Python
Python并发编程实例教程之线程的玩法
Jun 20 Python
Python jiaba库的使用详解
Nov 23 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
2个自定义的PHP in_array 函数,解决大量数据判断in_array的效率问题
2014/04/08 PHP
php中 $$str 中 "$$" 的详解
2015/07/06 PHP
PHP开发Apache服务器配置
2015/07/15 PHP
在Mac OS上搭建Nginx+PHP+MySQL开发环境的教程
2015/12/21 PHP
Laravel5.* 打印出执行的sql语句的方法
2017/07/24 PHP
深入研究PHP中的preg_replace和代码执行
2018/08/15 PHP
PHP如何获取Cookie并实现模拟登录
2020/07/16 PHP
jquery购物车实时结算特效实现思路
2013/09/23 Javascript
javascript实现瀑布流自适应遇到的问题及解决方案
2015/01/28 Javascript
vue.js 表格分页ajax 异步加载数据
2016/10/18 Javascript
javascript输出AscII码扩展集中的字符方法
2016/12/26 Javascript
利用JavaScript实现栈的数据结构示例代码
2017/08/02 Javascript
详解Vue-Cli 异步加载数据的一些注意点
2017/08/12 Javascript
微信小程序chooseImage的用法(从本地相册选择图片或使用相机拍照)
2018/08/22 Javascript
layui 阻止图片上传的实例(before方法)
2019/09/26 Javascript
JS实现横向轮播图(初级版)
2020/06/24 Javascript
python实现带验证码网站的自动登陆实现代码
2015/01/12 Python
使用python进行文本预处理和提取特征的实例
2018/06/05 Python
numpy 对矩阵中Nan的处理:采用平均值的方法
2018/10/30 Python
Python模拟登入的N种方式(建议收藏)
2020/05/31 Python
简述python&pytorch 随机种子的实现
2020/10/07 Python
Python list和str互转的实现示例
2020/11/16 Python
Python环境搭建过程从安装到Hello World
2021/02/05 Python
详解Html5原生拖拽操作
2018/01/12 HTML / CSS
HTML5 canvas基本绘图之图形组合
2016/06/27 HTML / CSS
意大利团购网站:Groupon意大利
2016/10/11 全球购物
世界上最大的巴士旅游观光公司:Big Bus Tours
2016/10/20 全球购物
最新计算机专业自荐信
2013/10/16 职场文书
学校运动会开幕演讲稿
2014/01/04 职场文书
团队经理竞聘书
2014/03/31 职场文书
代领学位证书毕业证书委托书
2014/09/30 职场文书
民主评议党员自我鉴定
2014/10/21 职场文书
病人写给医生的感谢信
2015/01/23 职场文书
烈士陵园扫墓感想
2015/08/07 职场文书
导游词范文之颐和园/重庆/云台山
2019/09/10 职场文书
Java并发编程之Executor接口的使用
2021/06/21 Java/Android