Python关于字典的使用实例

102 阅读1分钟
studs=[{'sid':'103','Chinese':90,'Math':95,'English':92},{'sid':'101','Chinese':80,'Math':85,'English':82},{'sid':'102','Chinese':70,'Math':75,'English':72}]
scores = dict()
for stu in studs:
    sv = stu.items()  # dict_items([('sid', '103'), ('Chinese', 90), ('Math', 95), ('English', 92)])
    L = []
    for i in sv:
        if i[0] == 'sid':
            k = i[1]  # 将学号存储下来
        else:
            L.append(i[1])  # 否则就把成绩加进去
    scores[k] = L  # 学号对应成绩
# scores -> {'103': [90, 95, 92], '101': [80, 85, 82], '102': [70, 75, 72]}
so = list(scores.items())  # [('103', [90, 95, 92]), ('101', [80, 85, 82]), ('102', [70, 75, 72])]
so.sort(key = lambda x: x[0], reverse = False)
for i in so:
    print('{}:{}'.format(i[0], i[1]))