我有一个名为frequentItems的字符串列表和一个名为mis(多个项目支持值)的Dict,其值是浮点型的。两者之间的关系是frequentItems的任何元素,imis的键,因此mis[frequentItems[i]]返回浮点值。

我想根据从frequentItems返回的浮点值对mis[frequentItems[i]]进行排序,但是不确定如何使用.sort()sorted()指定它。我基本上没有使用lambda的经验,但是认为这是我需要指定的。

最佳答案

您甚至不需要在这里使用lambda,只需使用dict.get即可获取与列表元素相对应的值。

frequentItems.sort(key = mis.get)


例:

mis, frequentItems = {1: 3.4, 5: 3.14, 3: 7.5}, [1, 3, 5]
frequentItems.sort(key = mis.get)
print(frequentItems)  # [5, 1, 3]

08-04 23:11