Python 按数字降序排列字典元素
如何按降序对dictionares元素进行降序排序,如上图所示。您应该知道,从概念上讲,dict是一个哈希表,它不应该带有特定的顺序。在Python3.6中也是如此 然而,Python 3.6在其Python 按数字降序排列字典元素,python,Python,如何按降序对dictionares元素进行降序排序,如上图所示。您应该知道,从概念上讲,dict是一个哈希表,它不应该带有特定的顺序。在Python3.6中也是如此 然而,Python 3.6在其dict中引入了保留插入顺序或键的附加功能。因此,当您打印(您的_dict)时,您将准确地看到您在您的_dict中创建键的顺序 使用此功能,您可以执行以下操作: Dict = {'Mango' : ['Green',59], 'Straberry': ['Red',33], 'Melon': ['Yel
dict
中引入了保留插入顺序或键的附加功能。因此,当您打印(您的_dict)
时,您将准确地看到您在您的_dict
中创建键的顺序
使用此功能,您可以执行以下操作:
Dict = {'Mango' : ['Green',59], 'Straberry': ['Red',33], 'Melon': ['Yellow',90] }
Dict = {'Melon': ['Yellow',90], 'Mango' : ['Green',59], 'Straberry': ['Red',33] }
尝试按数字降序排序
>>> Dict = {'Mango' : ['Green',59], 'Straberry': ['Red',33], 'Melon': ['Yellow',90] }
>>> Dict
{'Mango': ['Green', 59], 'Straberry': ['Red', 33], 'Melon': ['Yellow', 90]}
>>> Sorted = {k:Dict[k] for k in sorted(Dict.keys())}
>>> Sorted
{'Mango': ['Green', 59], 'Melon': ['Yellow', 90], 'Straberry': ['Red', 33]}
输出
dd = {'Mango' : ['Green',59], 'Straberry': ['Red',33], 'Melon': ['Yellow',90] }
ds = {v[0]:v[1] for v in sorted(dd.items(), key=lambda x: -x[1][1])}
print(ds)
{'Melon': ['Yellow', 90], 'Mango': ['Green', 59], 'Straberry': ['Red', 33]}
除了另一个答案之外-
Dict=sorted(Dict.items(),key=lambda x:x[1][1],reverse=True)
输出
dd = {'Mango' : ['Green',59], 'Straberry': ['Red',33], 'Melon': ['Yellow',90] }
ds = {v[0]:v[1] for v in sorted(dd.items(), key=lambda x: -x[1][1])}
print(ds)
{'Melon': ['Yellow', 90], 'Mango': ['Green', 59], 'Straberry': ['Red', 33]}
是的,我看过这种类型的代码,但我想按第二个元素排序,即水果的数量,正如我在问题中提到的,甜瓜排在第一位,因为它有90个数量。