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

php中文网
发布: 2016-12-05 13:27:15
原创
1921人浏览过

首先第一步,打开文件,有两个函数可供选择: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' ?抑或别的方式打开文件。

打开的方式有:

立即学习Python免费学习笔记(深入)”;

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() : 读取整个文件,返回一个 字符串列表 ,列表中的每个元素都是一个字符串,代表一行

小绿鲸英文文献阅读器
小绿鲸英文文献阅读器

英文文献阅读器,专注提高SCI阅读效率

小绿鲸英文文献阅读器 199
查看详情 小绿鲸英文文献阅读器

例子:

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速学教程(入门到精通)

python怎么学习?python怎么入门?python在哪学?python怎么学才快?不用担心,这里为大家提供了python速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号