首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Python -在嵌套字典中查找最大值

Python -在嵌套字典中查找最大值
EN

Stack Overflow用户
提问于 2020-03-21 02:08:46
回答 2查看 82关注 0票数 0

你好,我是Python的新手,在从嵌套字典生成最大值时遇到了一些问题。

原文:

代码语言:javascript
复制
gradebooks = {'business analytics': {'Alice': 95, 'Troy': 92}, 'Python programming': {'James': 89, 'Charles': 100, 'Bryn': 69, 'Alice': 100}, 'R programming': {'Troy': 93, 'James': 100, 'Charles': 88}}

我想要生成的新字典:

代码语言:javascript
复制
{'business analytics': 95, 'Python programming': 100, 'R programming': 100}

我使用了以下代码,但无法生成最大值:

代码语言:javascript
复制
ISOM_gradebooks = {course: v for course, name in gradebooks.items() for key, v in name.items()}
print(ISOM_gradebooks)

对此有任何解决方案,谢谢。

EN

回答 2

Stack Overflow用户

发布于 2020-03-21 02:10:39

代码语言:javascript
复制
>>> {key: max(value.values()) for key, value in gradebooks.items()}
{'business analytics': 95, 'Python programming': 100, 'R programming': 100}
票数 0
EN

Stack Overflow用户

发布于 2020-03-21 02:14:14

您可以尝试执行以下操作来获取每个类别的最大值:

代码语言:javascript
复制
outputDict = {}

# This will loop on each key and value of your gradebooks dictionary
for k,v in gradebooks.items()
    maxVal = 0
    # This will loop over the grades of each student
    for grade in v.values():
        if grade > maxVal:
            maxVal = grade
    # Update your dictionary with the value of the maxVal of your subject k
    outputDict[k] = maxVal

如果这有帮助,请告诉我!

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60779469

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档