python读取文件的几种方式
Posted 木白星枝
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python读取文件的几种方式相关的知识,希望对你有一定的参考价值。
下面是不同场景较为合适的数据读取方法:
1.python内置方法(read、readline、readlines)
纯文本格式或非格式化、非结构化的数据,常用语自然语言处理、非结构文本解析、应用正则表达式等后续应用场景下,Python默认的三种方法更为合适。
1.1 read() : 一次性读取整个文件内容。推荐使用read(size)方法,size越大运行时间越长
读取整个文件,将文件内容放到一个字符串变量中,如果文件大于可用内存,不能使用这种处理。
file_object = open("test.py",'r') #创建一个文件对象,也是一个可迭代对象
try:
all_the_text = file_object.read() #结果为str类型
print (type(all_the_text))
print ("all_the_text=",all_the_text)
finally:
file_object.close()
1.2readline() :每次读取一行内容。内存不够时使用,一般不太用
readline()每次读取一行,比readlines()慢得多,返回的是一个字符串对象,保存当前行的内容
file_object1 = open("test.py",'r')
try:
while True:
line = file_object1.readline()
if line:
print ("line=",line)
else:
break
finally:
file_object1.close()
1.3readlines() :一次性读取整个文件内容,并按行返回到list,方便我们遍历
file_object2 = open("test.py",'r')
try:
lines = file_object2.readlines()
print "type(lines)=",type(lines) #type(lines)= <type 'list'>
for line in lines:
print ("line=",line)
finally:
file_object2.close()
2.numpy库
结构化、纯数值型的数据,并且主要用于矩阵计算、数据建模的,使用Numpy的loadtxt更方便。
对于二进制的数据处理,使用Numpy的load和fromfile方法更为合适。
3.pandas库
对于结构化的、探索性数据统计和分析场景,使用pandas方法进行读取,因为其提供了数据框,对数据进行任意翻转、切片、关联都很方便。
以上是关于python读取文件的几种方式的主要内容,如果未能解决你的问题,请参考以下文章