有什么方法可以将CSV文件按降序排序。我有一个CSV文件,其中包含不同玩家的所有得分。下面的代码从csv文件中提取前5个得分并将其输出到我的程序中。但是我想输出最高的5分,而不是前5分。无论如何,我可以做到这一点。 def DisplayLeaderBoard(): count = 0 with open ('StudentNames&Questions.csv') as scorelist: reader = csv.DictReader(scorelist) for row in reader: if count ==250: break count = count+50 scores_label = Label(canvas, text=(row['Names'], row['Score']), bg = 'gray25', fg='snow', font = font1) canvas_scores_label = canvas.create_window(350, 280+count, window = scores_label, width = 500, height = 40)我在下面玩了这段代码,但是它主要用于数组。因此,如果有人知道如何首先将其放入数组,然后放入标签的for循环,请告诉我。 array.sort(key=lambda x: x[0], reverse=True)
1 回答
鸿蒙传说
TA贡献1865条经验 获得超7个赞
x[0]
因为您已经传递了DictReader
,所以在这里将无法使用,因此,参数x
a必须是列键,并且csv
模块也不会将数值转换回整数,因此您可能会在整数上得到一个alphanum排序,例如-字符串值。
总结起来,您需要根据“得分”列的数值进行排序:
for row in sorted(reader,key = lambda x : int(x['Score']),reverse=True):
添加回答
举报
0/150
提交
取消