python读取(几十G)超大文本,节约内存实现方法
博主对大数据相关处理方法了解不多,现有一份数据需要用作资料查询的数据库,只能使用python进行简单的操作。
目前使用以下方法:
“with语句打开和关闭文件,包括抛出一个内部块异常。for line in f文件对象f视为一个迭代器,会自动的采用缓冲IO和内存管理,所以你不必担心大文件。”
1 lj=r'E:\123\sj1.txt' 2 line_num=0 3 with open(lj, 'r', encoding = 'utf-8') as f: 4 for line in f: 5 line_num=line_num+1 6 7 print('查询结束') 8 print('共计'+str(line_num)+'行数据')
测试过程中,所读取的文本文件大小约18G,大约有几亿行数据,全部读完约4、5分钟左右,采用遍历的方法查找信息跑下来的时间也差不多4、5分钟。
后续可能尝试将数据文件分割成多个文件,通过多线程读取提速。
本文来自博客园,作者:精神小黑猫,转载请注明原文链接:https://www.cnblogs.com/daluobei/p/16451787.html,认为文章有用的小伙伴可以打赏打赏,万分感谢!

浙公网安备 33010602011771号