我在使用python读取几十万行的文件中的数据,并构造字典,列表等数据结构时,再访问字典,列表时,一般都会出现内存不够的问题,然后只能循环读取几百行或者一定数量的行数来循环操作。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
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 |
我是这样读取的
应该还有很多好的方法,比如多线程等等。
做此记录只为了学习
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对服务器之家的支持。如果你想了解更多相关内容请查看下面相关链接
原文链接:https://blog.csdn.net/accumulate_zhang/article/details/52705382