【发布时间】:2020-09-24 10:12:15
【问题描述】:
我正在尝试制作一个高分板,以便对其进行排序并打印出最高分以及用户获得的最高分。
我在列表中找到了这些['tim - 8','jim - 12','terry - 18','frank - 14']
我试图让它像这样打印:
HIGHSCORES
terry - 18
frank - 14
jim - 12
tim - 8
最简单的方法是什么?
【问题讨论】:
我正在尝试制作一个高分板,以便对其进行排序并打印出最高分以及用户获得的最高分。
我在列表中找到了这些['tim - 8','jim - 12','terry - 18','frank - 14']
我试图让它像这样打印:
HIGHSCORES
terry - 18
frank - 14
jim - 12
tim - 8
最简单的方法是什么?
【问题讨论】:
您可以将 (lambda) 函数定义为 split - 之后的部分并将其转换为 int,然后将该函数用作 key 到 sort 中的列表 @987654327 @。
scores = ['tim - 8','jim - 12','terry - 18','frank - 14']
scores.sort(key=lambda s: int(s.split("-")[1]), reverse=True)
# ['terry - 18', 'frank - 14', 'jim - 12', 'tim - 8']
【讨论】: