sorted Dictionary to list

时间:2014-11-29 05:10:04

标签: python sorting dictionary

好的,我正在尝试对字典中的键值对字典进行排序。键是单词,值是十进制值。我正在尝试根据值获取排序键的列表。现在我有:

sortedList = sorted(wordSimDic, key=wordSimDic.get,reverse=True)

这很有效。但是,我希望能够做进一步的事情。如果键的值匹配,我希望它们按字母顺序由键在输出列表中排序。

For example

    Input:
    {'c':1,'a':1,'d':3}

    Output:
    [a,c,d]

 right now my output is:
    [c,a,d]

你有什么建议。非常感谢!

1 个答案:

答案 0 :(得分:2)

一般来说,要按X排序,然后Y'在Python中,你需要一个产生(X,Y)元组的键函数(或其他序列,但元组最简单,最干净)。因此:

sorted(wordSimDic, key=lambda k: (wordSimDic.get(k), k), reverse=True)