用Python读取几十万行文本数据

yipeiwu_com5年前Python基础

我在使用python读取几十万行的文件中的数据,并构造字典,列表等数据结构时,再访问字典,列表时,一般都会出现内存不够的问题,然后只能循环读取几百行或者一定数量的行数来循环操作。

keyword_list=[line.strip() for line in open("keywords.txt",'r')]
#f1=open("part_wiki_vec.txt",'r')
f1=open("wiki_vectors.txt")
f2=open("result.txt",'w')
i=0
content=f1.readlines()
while i<1150:
 for line in content[300*i:300*(i+1)]:
  line=line.strip().split(' ')
  if line[0] in keyword_list:
   wordvec=' '.join(line)
   print wordvec
   f2.write(wordvec)
  #print line
 i+=1

我是这样读取的

应该还有很多好的方法,比如多线程等等。

做此记录只为了学习

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对【听图阁-专注于Python设计】的支持。如果你想了解更多相关内容请查看下面相关链接

相关文章

简单谈谈Python中函数的可变参数

前言 在Python中定义函数,可以用必选参数、默认参数、可变参数和关键字参数,这4种参数都可以一起使用,或者只用其中某些,但是请注意,参数定义的顺序必须是:必选参数、默认参数、可变参...

简介Python的collections模块中defaultdict类型的用法

defaultdict 主要用来需要对 value 做初始化的情形。对于字典来说,key 必须是 hashable,immutable,unique 的数据,而 value 可以是任意的...

使用memory_profiler监测python代码运行时内存消耗方法

使用memory_profiler监测python代码运行时内存消耗方法

前几天一直在寻找能够输出python函数运行时最大内存消耗的方式,看了一堆的博客和知乎,也尝试了很多方法,最后选择使用memory_profiler中的mprof功能来进行测量的,它的原...

python打印直角三角形与等腰三角形实例代码

前言 本文通过示例给大家详细介绍了关于python打印三角形的相关,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧 1、直角三角形 #i控制行数j控制*的个数 fo...

Python列出一个文件夹及其子目录的所有文件

python简介 Python是一种解释型、面向对象、动态数据类型的高级程序设计语言。 Python由Guido van Rossum于1989年底发明,第一个公开发行版发行于1991...