Py学习  »  Python

Python 3中的字典和循环。十、

Ben • 2 年前 • 657 次点击  

我们有一个小组成绩记录:

log = {

    'Alex': [3, 7, 11, 10, 8],

    'Ben': [6, 12, 4, 9, 9],

    'Сarla': [5, 10, 7, 5, 9]}

输出“最好的学生X,他有最高分数Y,最低分数Z”

解决方案

我有一本字典,我决定做的第一件事就是转换它,通过挂钩每个学生的最高和最低分数,用新的值替换它。之后,在一个循环中,我只想通过每个学生的最高分数,找到最大平均值,并使用它,返回字典中对应于意思的键。但是发生了一个我无法理解的错误。通过循环后,数据被转换为int,因此无法使用它们。怎么办?

密码

log = {
    'Alex': [3, 7, 11, 10, 8],
    'Ben': [6, 12, 4, 9, 9],
    'Carla': [5, 10, 7, 5, 9]}

log.update({"Alex":[min(log["Alex"])] + [max(log["Alex"])],
                 "Ben":[min(log["Ben"])] + [max(log["Ben"])],
                 "Carla":[min(log["Carla"])] + [max(log["Carla"])]})

for i,j in log.values():
    print(max(i,j)) 

输出

3 11

4 12

5 10

问题是,int对象不是itarible。我想找一对最大的,就是 麦克斯(j) ,我必须通过,但是我怎么能一次返回一对值,而不仅仅是 麦克斯(j) .

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/129993
 
657 次点击  
文章 [ 2 ]  |  最新文章 2 年前