📜  Python – 按字典值排序列表

📅  最后修改于: 2022-05-13 01:55:27.378000             🧑  作者: Mango

Python – 按字典值排序列表

有时在使用Python字典时,我们可能会遇到需要根据字典中的对应值执行排序列表的问题。这可以应用于许多领域,包括数据和 Web 开发。让我们讨论可以执行此任务的某些方式。

方法 #1:使用sorted() + key + lambda
上述功能的组合可以用来解决这个问题。在此,我们使用 sorted() 执行排序任务。 lambda函数用于获取键的值。

# Python3 code to demonstrate working of 
# Sort List by Dictionary values
# Using sorted() + key + lambda
  
# initializing list
test_list = ['gfg', 'is', 'best']
  
# initializing Dictionary
test_dict = {'gfg' : 56, 'is' : 12, 'best' : 76}
  
# printing original list
print("The original list is : " + str(test_list))
  
# printing original dictionary
print("The original dictionary is : " + str(test_dict))
  
# Sort List by Dictionary values
# Using sorted() + key + lambda
res = sorted(test_list, key = lambda ele: test_dict[ele])
  
# printing result 
print("The list after sorting : " + str(res)) 
输出 :
The original list is : ['gfg', 'is', 'best']
The original dictionary is : {'best': 76, 'gfg': 56, 'is': 12}
The list after sorting : ['is', 'gfg', 'best']

方法 #2:使用sorted() + key + get()
此方法以与上述方法类似的方式执行任务。不同之处在于它访问值 get()。

# Python3 code to demonstrate working of 
# Sort List by Dictionary values
# Using sorted() + key + get()
  
# initializing list
test_list = ['gfg', 'is', 'best']
  
# initializing Dictionary
test_dict = {'gfg' : 56, 'is' : 12, 'best' : 76}
  
# printing original list
print("The original list is : " + str(test_list))
  
# printing original dictionary
print("The original dictionary is : " + str(test_dict))
  
# Sort List by Dictionary values
# Using sorted() + key + get()
res = sorted(test_list, key = test_dict.get)
  
# printing result 
print("The list after sorting : " + str(res)) 
输出 :
The original list is : ['gfg', 'is', 'best']
The original dictionary is : {'best': 76, 'gfg': 56, 'is': 12}
The list after sorting : ['is', 'gfg', 'best']