排序百分比列表

时间:2010-05-11 09:21:53

标签: python list sorting

我有以下列表:

l = ['50%','12.5%','6.25%','25%']

我想按以下顺序排序:

['6.25%','12.5%','25%','50%']

使用l.sort()产生:

['12.5%','25%','50%','6.25%']

在Python中轻松排序这些列表的任何很酷的技巧?

1 个答案:

答案 0 :(得分:15)

您可以使用自定义键进行排序

b =['52.5%', '62.4%', '91.8%', '21.5%']
b.sort(key = lambda a: float(a[:-1]))

这会对集合进行重新计算,但会使用数值作为键(即字符串中'%'的字符串并转换为浮点数。