Python: finding keys with unique values in a dictionary?

前端 未结 9 2040
臣服心动
臣服心动 2021-02-19 01:28

I receive a dictionary as input, and want to return a list of keys for which the dictionary values are unique in the scope of that dictionary.

I will clarify with an exa

9条回答
  •  太阳男子
    2021-02-19 01:49

    >>> b = []
    >>> import collections
    >>> bag = collections.defaultdict(lambda: 0)
    >>> for v in a.itervalues():
    ...     bag[v] += 1
    ...
    >>> b = [k for (k, v) in a.iteritems() if bag[v] == 1]
    >>> b.sort() # optional
    >>> print b
    ['dog', 'snake']
    >>>
    

提交回复
热议问题