过滤列表,只有唯一值 - 使用python

use*_*056 2 python filter

我想知道如何获取列表,ex a = [1,5,2,5,1],并让它过滤掉唯一值,这样它只返回一个只在列表中出现一次的数字.所以它会给我一个= [2]的结果.

我能够弄清楚如何过滤重复,现在我将如何摆脱重复?

不需要直接的答案,只需一点提示或提示是受欢迎的:)

我能够在stackoverflow上找到它.它做我想要的,但我不明白代码,有人可以为我分解吗?

d = {}
for i in l: d[i] = d.has_key(i)

[k for k in d.keys() if not d[k]]
Run Code Online (Sandbox Code Playgroud)

jam*_*lak 6

>>> a = [1, 5, 2, 5, 1]
>>> from collections import Counter
>>> [k for k, c in Counter(a).iteritems() if c == 1]
[2]
Run Code Online (Sandbox Code Playgroud)