文件排序去重新思路

我一直觉得思路是比较重要的。

 

前几天终于从一个充满了垃圾广告的网盘里下载到了传说中的 csdn 数据库(就是以前泄露的那个,现在被各种封杀了)

 

我写了个一个python脚本从中提取密码(用户名和邮箱我都不需要),用来做一个字典。

但是我发现,其中有很多是重复的,比如123456789之类的。

 

所以,第一个问题摆在了我的面前,怎么去重,怎么给文件中的数据去重。

 

我首先想到的就是python 中的先set在list。

 

然后我遇到了第二个问题,当这个字典文件比较大的时候,全部读取到内存是不合理的。

 

通过资料,我查到了一条linux命令,uniq,去重,我的字典有70MB左右,速度还可以接受。

 

第三个问题,如果数据量真的很大很大,我该如何处理呢?

 

这时候我想到了数据库,数据库设计中有一个约束,叫做唯一性约束,既已经插入的值,不能再次插入。

 

那么,我读取文件中的数据,尝试往数据库插入,如果数据库中已经存在,我就忽略此次插入。

这就满足了我的需求了。

 

我的第四个问题,我需要排序,简单的排序就是sorted了,Linux也有sort命令,那么,使用数据库应该也可以排序吧?

 

这里仅仅是一个思路,我还未做尝试,不过应该可行。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值