我有一个文本文件,它以以下格式存储数据:
Mike 6 4 3
Terry 4 3 4
Paul 10 7 8
jvecsei昨天帮助我用一些代码检索数据并确定每个人的最高分数。我稍微修改了一下,这样它就可以选择分数并打印出每个人的平均值。在
^{pr2}$它的输出是这样的,非常好:
Mike : 4
Terry : 3
Paul : 8
问题:我真的很想把这三个人按得分最高的顺序排序,这样他们就可以把得分最高的人排在最前面,而得分最低的人排在最后,如下所示:
Paul : 8
Mike : 4
Terry : 3
我过去曾用它从文本文件中检索并按字母顺序排序,但由于平均值是一个新变量,并且没有与原始数字一起存储在文本文件中,所以我不知道如何引用/实现它。在
with open('classc.txt', 'r') as r:
for line in sorted(r):
print(line, end='')
非常感谢你的帮助。我慢慢地对这些东西越来越熟悉了,但我还有很长的路要走。在
你可以写一个函数来计算分数的平均值,然后根据它进行排序。请注意,您的函数将进行计算,而average实际上并不需要“存储”在原始文件/数据中的任何位置-
我用这个问题来说明python3.5中一些不错的新特性。您可以使用new statistics module和generalized unpacking以一种非常python的方式来解决这个问题:
以下是更传统的python代码:
^{pr2}$将您的} 对字典进行排序
Name : Average
输出存储到字典中,然后使用^{输出:
^{pr2}$相关问题 更多 >
编程相关推荐