根据Di中的值对字符串列表进行排序

2024-06-23 19:37:49 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个名为frequentItems的字符串列表和一个名为mis(多项目支持值)的Dict,其值是float。{{cd6}的值是两个元素之间的关系。在

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


Tags: 项目lambda字符串元素列表排序关系经验
2条回答
def getItem(itemName):
    return mis.get(itemName)

frequentItems.sort(key=getItem)

您可以粗略地将getItem重写为lambda函数

^{pr2}$

你可以像lambda一样直接包含它

frequentItems.sort(key= lambda itemName:mis.get(itemName,None))

你可以把你的论点简化成一个字母

frequentItems.sort(key= lambda i:mis.get(i,None))

当lambdas较短时,它们可以慢一些

(或者使用fourtheye更好的方法来解决这个实际问题:p)

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

frequentItems.sort(key = mis.get)

示例:

^{pr2}$

相关问题 更多 >

    热门问题