How to sort a Python dict's keys by value

后端 未结 5 2092
逝去的感伤
逝去的感伤 2020-12-15 05:35

I have a dict that looks like this

{ \"keyword1\":3 , \"keyword2\":1 , \"keyword3\":5 , \"keyword4\":2 }

And I would like to convert it DESC and

5条回答
  •  庸人自扰
    2020-12-15 06:03

    You could use

    res = list(sorted(theDict, key=theDict.__getitem__, reverse=True))
    

    (You don't need the list in Python 2.x)

    The theDict.__getitem__ is actually equivalent to lambda x: theDict[x].

    (A lambda is just an anonymous function. For example

    >>> g = lambda x: x + 5
    >>> g(123)
    128
    

    This is equivalent to

    >>> def h(x):
    ...   return x + 5
    >>> h(123)
    128
    

    )

提交回复
热议问题