我有一个叫做分数的列表:[[['test', 1]], [['t', 4]], [['egrd', 8]], [['fds', 2]], [['dfs', 23]], [['wtr', 0]], [['reer', 1]]]
我试图按每个元素中的数字对它进行排序,使它变成:[[['dfs', 23]], [['egrd', 8]], [['t', 4]], [['fds', 2]]. [['test', 1]], [['reer', 1]], [['wtr', 0]]]
我尝试在数组中循环,并根据数字元素向新数组中添加元素,如下所示:
for x in range(0, 4): # loop through mulitple times to make sure it is ordered
for i in range(0, len(scores) - 1):
try:
if scores[i][0][1] > scores[i + 1][0][1]: # compare each element against the one in front of it
top_scores.append(scores[i]) # append to the new array
except IndexError:
pass
它返回以下列表:[[['egrd', 8]], [['dfs', 23]], [['egrd', 8]], [['dfs', 23]], [['egrd', 8]], [['dfs', 23]], [['egrd', 8]], [['dfs', 23]]]
非常感谢您的帮助。你知道吗
将
sorted
与自定义key
函数一起使用可以将lambda函数定义为键,以便执行以下操作:
相关问题 更多 >
编程相关推荐