python – 通过字典迭代嵌套字典

我有一个嵌套字典如下:

student_loan_portfolio = {
    'loan1': {'rate': .078, 'balance': 1000, 'payment': 100, 'prepayment': 0},
    'loan2': {'rate': .0645, 'balance': 10, 'payment': 5, 'prepayment': 0},
    'loan3': {'rate': .0871, 'balance': 250, 'payment': 60, 'prepayment': 0},
    'loan4': {'rate': .0842, 'balance': 200, 'payment': 37, 'prepayment': 0},
    'loan5': {'rate': .054, 'balance': 409, 'payment': 49, 'prepayment': 0},
    'loan6': {'rate': .055, 'balance': 350, 'payment': 50, 'prepayment': 0}
}

我想按照包含在其各自嵌套字典中具有最高’rate’值的字典的键的顺序遍历包含字典(使用keys loan1到loan6).也就是说,我想按贷款3,贷款4,贷款1,贷款2,贷款6,贷款5的顺序进行迭代

最简单的方法是什么?

谢谢

最佳答案
我相信你想:

sorted(student_loan_portfolio.items(), key=lambda (k,v): v['rate'], reverse=True)

(感谢@MarkReed,你是对的.要按降序排序,我们需要-v [‘rate’],或者如上所示,将reverse = True传递给sort.

转载注明原文:python – 通过字典迭代嵌套字典 - 代码日志