我有一个巨大的文本文件,里面有重复的行。文件大小约为150000000行。我想找到最有效的方法读取这些行并消除重复项。我正在考虑一些方法:-
- 将整个文件读入,使用list(set(lines))。
- 每次读取10k行,对其进行list(set(lines))操作,将另外的10k行读取到列表中,再进行list(set(lines))。重复以上步骤。
set()
不会有任何魔力,因为比较字符串的成本是O(mn)
,当你处理150000000
行时,这种方法似乎不可行。 - ZdaR