我目前有一个文本文件,其中包含使用过我创建的测验的人员的分数和姓名。
Bob:8
Lucy:5
John:2
Bob:6
Chris:9
Bob:7
Lucy:4
John:3
John:4
Bob:7
在 Python 中,我对如何打印列表中每个名字的最后三个分数感到困惑。比方说,这应该在 Bob 的名字旁边打印出 7、7 和 6 的分数,以及其他所有人的最后三个分数(当然,如果他们的分数少于三个,则会打印这些分数)。
我目前正在使用典型方法解释该文件(这可能不适合我的意图)。
x = open('Scores.txt', 'r')
最佳答案
你可以在 google 上搜索(或阅读官方的 python 文档)例如 4 个 python 东西 - 文件、字符串、字典和列表,最后得到几行可以处理它的 python 代码。因为这看起来像是学习一些 Python 的任务......
如果您真的想学习,请考虑最适合您的解决方案 - 只需拆分任务并逐步完成,例如您将需要:
- 从文件中读取数据
- 解析行(拆分名称和分数)
- 将其存储在某个地方,例如在 python 字典中,名称作为键,Python 列表作为值。例如:
scores['Bob'] == [8, 8, 7]
看起来容易理解且简单。 - 关于空行和何时向列表添加值的条件的一些思考魔法将为您提供您想要的结果
抱歉,没有提供我的〜10行解决方案,但我认为学习某些东西的最好方法是自己真正学习并为自己的成就(即使是很小的成就)感到高兴,而不是仅仅复制其他代码。
关于python - 文本文件解释,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29753487/