擅长:python、mysql、java
<p>我的方法是首先将具有相同<code>count</code>的所有元素分组到<code>defaultdict</code>对象中,然后根据过滤条件构建结果字典:</p>
<pre><code>>>> from collections import Counter, defaultdict
>>>
>>> lst = ['Mike', 'Mike', 'Mike', 'Jhon', 'Jhon', 'Rob', 'Rob', 'Carl', 'Carl']
>>> c = Counter(lst)
>>> c
Counter({'Mike': 3, 'Carl': 2, 'Rob': 2, 'Jhon': 2})
>>>
>>> d = defaultdict(list)
>>>
>>> for k,v in c.items():
d[v].append(k)
>>>
>>> d
defaultdict(<class 'list'>, {2: ['Jhon', 'Rob', 'Carl'], 3: ['Mike']})
>>>
>>> result = dict((*v,k) for k,v in d.items() if len(v) < 2)
>>> result
{'Mike': 3}
>>>
</code></pre>