这篇文章将为大家详细讲解有关使用Python实现一个快速比较大文件的功能,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。
解决方法
利用set()的different(方法)可快速比较,两个set集合的不同之处,也就是对集合进行数学运算
假设:数据1拥有858882条记录,数据2有360029条记录,快速挑选出数据2中而不存在与数据1中的数据
方法:先将两个文件中的数据读入两个list:data1和data2,然后通过:set(data2).difference(set(data1)),获取data2与data1的差集
下面为一个小的demo,可以看到近百万级的数据,比较出差集也就需要1秒左右,效率不是一般的高
import time t1 = time.time() data1 = [] for i in open("inDB.txt","r",encoding="utf-8"): i = i.strip("\n") i = i.lower() data1.append(i) data2 = [] for i in open("data/18年.filename","r",encoding="utf-8"): i = i.strip("\n") i = i.lower() data2.append(i) newdata = set(data2).difference(set(data1)) t2 = time.time() print(f"data1 length:\t{len(data1)}") print(f"data2 length:\t{len(data2)}") print(f"newdata length:\t{len(newdata)}") print(f"time use:\t{round(t2 - t1,3)}s")
当前标题:使用Python实现一个快速比较大文件的功能-创新互联
网站路径:https://www.cdcxhl.com/article12/ddhigc.html
成都网站建设公司_创新互联,为您提供搜索引擎优化、外贸建站、云服务器、Google、App设计、网站内链
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联