在Python中查找重复的行

时间:2016-09-19 11:29:22

标签: python file

我有一个包含一些行的txt文件,我想找出:
这个文件是否有相同的行?

例如,这些是我的行:

7924265e2024daa24f801290d070a519
f1cbfec6b396152da87e6a4279a4ad81
8d1a705ed05f734a03e890db5467ea0a
021128daa2fb3dc8b7c5af9e49e24439
e2ec22e390c5910eb4e952208bb1c47d
8d1a705ed05f734a03e890db5467ea0a
7f65a7f8a160431cc8f69cd1f04b0aba
d8e5f74f296cd47a30915bbbd2418d66
005f8b973ebe30fd19b1bf802ffb6b32

2 个答案:

答案 0 :(得分:1)

我假设你已经读过这些行并将它们存储在一个数组中

lines

然后,

set(lines)

为您提供包含所有唯一线条的集合。如果每一行都是唯一的,则行和集合(行)的长度将相同。埃尔戈:

if len(lines) == len(set(lines)):
      print 'all lines are unique'
   else:
      print 'not all lines are unique'

答案 1 :(得分:0)

像魅力一样工作:

with open("file","r") as f:
    seen = set()
    for line in f:
        line_lower = line.lower()
        if line_lower in seen:
            print(line)
        else:
            seen.add(line_lower)