这是一种方法。
lst = ['10.987|first sentence', '13.87|second sentence', '9.098|third sentence']res = sorted(lst, key=lambda x: -float(x.split('|')[0]))结果
['13.87|second sentence', '10.987|first sentence', '9.098|third sentence']
说明
sorted
使用一个参数key
,该参数允许您指定要lambda
对其进行排序的custom()函数。- 在
lambda
按功能拆分“|” 并提取第一部分以获取数字分量。 - 为了进行数字排序,我们转换为
float
并最终求反以确保降序排列。 - 代替否定,
reverse=True
可以使用参数。



