编程语言
首页 > 编程语言> > 当用python读取几十万行文本时,会出现什么状况?

当用python读取几十万行文本时,会出现什么状况?

作者:互联网

 

 

前言
本文的文字及图片来源于网络,仅供学习、交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理。
作者:accumulate_zhang 

我在使用python读取几十万行的文件中的数据,并构造字典,列表等数据结构时,再访问字典,列表时,一般都会出现内存不够的问题,然后只能循环读取几百行或者一定数量的行数来循环操作。
  1.   keyword_list=[line.strip() for line in open("keywords.txt",'r')]
  2.   #f1=open("part_wiki_vec.txt",'r')
  3.   f1=open("wiki_vectors.txt")
  4.   f2=open("result.txt",'w')
  5.   i=0
  6.    
  7.    
  8.   content=f1.readlines()
  9.   while i<1150:
  10.   for line in content[300*i:300*(i+1)]:
  11.   line=line.strip().split(' ')
  12.   if line[0] in keyword_list:
  13.   wordvec=' '.join(line)
  14.   print wordvec
  15.   f2.write(wordvec)
  16.   #print line
  17.   i+=1

我是这样读取的?

应该还有很多好的方法,比如多线程等等。如果你还不是很明白或者正在学习,可以去小编的Python交流.裙 :一久武其而而流一思(数字的谐音)转换下可以找到了,里面有最新Python教程项目,一起交流进步!

做此记录只为了学习,O(∩_∩)O谢谢,不喜勿喷!

标签:f1,读取,python,wordvec,当用,line,txt,open
来源: https://www.cnblogs.com/chengxuyuanaa/p/11988576.html