Как прочитать файл в словарь, затем отсортировать и добавить индекс? - PullRequest
0 голосов
/ 03 октября 2018

Если файл выглядит следующим образом:

SID,Grade
1,99
2,100
3,55
4,60

как мне прочитать его в python и преобразовать результат следующим образом:

Dict=readGrades(’grades.csv’)

Считать 100 значений.

gDict{’1’:99,  ’2’:100,  ’3’:55, ...}

Затем сортируйте оценки с рангом

computeRank(gDict)
gDict{’1’:(99,2),’2’:(100,1),’3’:(55,4), ...}

1 Ответ

0 голосов
/ 03 октября 2018
def readGrades(filename):
    result = dict()
    with open(filename) as f:
        for line in f:
            key, val = line.split(",")
            result[key] = int(val.strip())
    return result

def computeRank(dic):
    rank = sorted(list(dic.values())); rank.reverse()
    for key in dic.keys():
        dic[key] = (dic[key], rank.index(dic[key]))

вы можете попробовать вот так

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...