我在使用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