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方法更为合适。

Numpy库的学习_木白星枝的博客-CSDN博客

3.pandas库
对于结构化的、探索性数据统计和分析场景,使用pandas方法进行读取,因为其提供了数据框,对数据进行任意翻转、切片、关联都很方便。

Pandas库的学习_木白星枝的博客-CSDN博客


版权声明:本文为qq_42759120原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。