在列表中选择唯一名称以删除重复条目

时间:2015-02-25 15:08:14

标签: python list

有没有办法只能突出显示文件中没有重复的行? 以下面的文件内容为例:

Product 1
Product 1
Product 2
Product 3
Product 3

我希望能够突出显示Product 2,因为它是唯一没有重复的内容。

2 个答案:

答案 0 :(得分:3)

你可以这样做:

from collections import Counter
with open("filename.txt", "r") as f:
    count = Counter(f.read().split("\n"))
    print [x for x in count if count[x] == 1]

这将保留所有行的计数器,每行发生多少次,您可以从中过滤掉以后需要的行。

答案 1 :(得分:1)

一种愚蠢的方法是:

>>> with open('test.txt') as fp:
...     x = fp.readlines()
...     print([i for i in x if x.count(i) ==1])

这将检查每一行的出现次数是否大于1,并且只打印那些不会出现多次的次数。

价: