11
d = {
    "local": {
        "count": 1,
        "health-beauty": {
            "count": 1,
            "tanning": {"count": 1}
        }
    },
    "nationwide": {"count": 9.0},
    "travel": {"count": 0}
}    

在这种情况下"nationwide"是最大的。

下面的代码可以更容易地附加到脚本:

d = {'travel': {'count': 0}, 'local': {'count': 1, 'health-beauty': {'count': 1, 'tanning': {'count': 1}}}, 'nationwide': {'count': 9.0}}
4

2 回答 2

13
>>> max(d, key=lambda x: d[x]['count'])
'nationwide'
于 2012-10-10T23:17:10.760 回答
1

这应该适用于嵌套字典:

def find_max(d, name=None):
    return max((v, name) if k == "count" else find_max(v, k) for k, v in d.items())

>>> find_max(d)
(9.0, 'nationwide')
于 2012-10-10T23:17:56.890 回答