Python阅读文件,总结upp得分

时间:2015-02-22 01:37:16

标签: python file

我有一个包含多行的文件。形式为:

Name2 lastname2 0\n                             
Name1 lastname1 1\n           
Name2 lastname2 2\n                 
...
...
...

该文件包含相同的名称很多次,之后的数字是分数。

我想为一个人添加所有积分并输出总得分最高的积分。我得到了一个提示:

  

读取每一行并将名称和分数分开。然后使用dictonary映射到点。

我可以拆分它,但是我看不出字典是如何帮助的?有人可以解释并做一个映射的例子。 (不给我答案,但理解)。

2 个答案:

答案 0 :(得分:3)

也许这个提示要求你在循环线上(或逐个阅读时)加总得分,并在字典中跟踪得分如下:

  • 有一个(最初为空)字典,将人(通过全名标识)映射到分数。
  • 然后,对于每一行:
    • 如果该行的人已经在字典中,请将此行的分数添加到该人的现有分数中。
    • 否则,将此行中的人和分数放入字典中的新条目。

答案 1 :(得分:0)

作为对das-g的答案的强制要求:最后,使用它来查找得分最高的条目。

..
d = {'name1':1, 'name2':2}
max_value = max(d.values())
for key, value in d.iteritems():
    if value == max_value:
        print key
...