这篇文章主要介绍了python读取和输出到txt,文中通过示例代码介绍的非常详细,
读取txt的数据和把数据保存到txt中是经常要用到的,下面我就总结一下。
读txt文件
python常用的读取文件函数有三种read()、readline()、readlines()
以读取上述txt为例,我们一起来看一下三者的区别
read() 一次性读全部内容
read() #一次性读取文本中全部的内容,以字符串的形式返回结果
1
2
3
|
with
open
(
"test.txt"
,
"r"
) as f:
#打开文件
data
=
f.read()
#读取文件
print
(data)
|
readline() 读取第一行内容
readline() #只读取文本第一行的内容,以字符串的形式返回结果
1
2
3
|
with
open
(
"test.txt"
,
"r"
) as f:
data
=
f.readline()
print
(data)
|
readlines() 列表
readlines() #读取文本所有内容,并且以数列的格式返回结果,一般配合for in使用
1
2
3
|
with
open
(
"test.txt"
,
"r"
) as f:
data
=
f.readlines()
print
(data)
|
可见readlines会读到换行符,我们可以用如下方法去除:
1
2
3
4
|
with
open
(
"test.txt"
,
"r"
) as f:
for
line
in
f.readlines():
line
=
line.strip(
'\n'
)
#去掉列表中每一个元素的换行符
print
(line)
|
写txt文件
write
1
2
|
with
open
(
"test.txt"
,
"w"
) as f:
f.write(
"这是个测试!"
)
#这句话自带文件关闭功能,不需要再写f.close()
|
print到文件中
1
2
3
|
data
=
open
(
"D:\data.txt"
,
'w+'
)
print
(
'这是个测试'
,
file
=
data)
data.close()
|
读写的模式
读写文件的时候有不同的模式,下面来总结一下:
输出文件其它方法:
(1) 直接重定向,Python a.py >>a.txt
(2)doc = open('out.txt','w') print(data_dict,file=doc) doc.close()
(3)
#coding:utf8
import os
def readFile(filename):
file = os.open(filename,'rb')
data=file.readlines()
file.close()
return data
def writeFile(filename,data):
file= os.open(filename,'wb')
file.write(data)
file.close()
print 'File had been writed Succed!'
if __name__=="__main__":
sourcefile = r'./b.py'
outputfile = r'./target.txt'
writeFile(outputfile,readFile(sourcefile))
print 'end!'