我有以下词典: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}

}

我想遍历包含字典(使用loan1到loan6键),以便将包含字典的键按其各自嵌套字典中“rate”值最高的顺序排列。也就是说,我想按loan3,loan4,loan1,loan2,loan6,loan5的顺序迭代

多亏了@Jame Sharp,我知道最简单的方法是:for k,v in sorted(student_loan_portfolio.items(), key=lambda (k,v): v['rate'], reverse=True):

我现在读到了关于lambda的文章,无法真正理解它是如何工作的以及为什么这样工作的。

首先,v['rate']我相信返回的是那些字典键的值。但它似乎应该是某种语法错误。什么是v['rate']引用,语法背后的逻辑是什么?

关于相关的注意事项,为什么我们必须将lambda函数的输入指定为元组?

下面的情况有什么不同?#1

>>>f = lambda x,y,z:x + y + z

>>>f(1,2,3)

#6

>>>f = lambda (x,y,z): x + y + z

>>>f(1,2,3)

Traceback (most recent call last):

File "", line 1, in

f(1,2,3)

TypeError: () takes exactly 1 argument (3 given)

谢谢你的澄清。

python3 lambda函数字典排序_排序字典表理解中的lambda函数相关推荐

  1. python 中split函数的应用_举例详解Python中的split()函数的使用方法

    函数:split() python中有split()和os.path.split()两个函数,具体作用如下: split():拆分字符串.通过指定分隔符对字符串进行切片,并返回分割后的字符串列表(li ...

  2. R语言广义线性模型函数GLM、R中有几种logistic回归扩展和变异、robust包中的glmRob函数鲁棒logistic回归、ms包中的lrm函数拟合序数逻辑回归

    R语言广义线性模型函数GLM.glm函数构建逻辑回归模型(Logistic regression).R中有几种logistic回归扩展和变异.robust包中的glmRob函数鲁棒logistic回归 ...

  3. 如何在python中对列表套列表进行排序_如何实现对Python中列表的排序?

    对List进行排序,Python提供了两个方法 方法1.用List的内建函数list.sort进行排序 list.sort(func=None, key=None, reverse=False) Py ...

  4. python集合排序_排序算法集合

    #### 冒泡排序 ### 时间复杂度是: O(n^2) ### 空间复杂度是: O(1) def BubbleSort(li): for i in range(len(li)): # i = 0 f ...

  5. java通过比较大小排序_排序算法的比较与java实现

    冒泡排序 基本思想: 比较相邻的元素.如果第一个比第二个大,就交换他们两个. 对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对.在这一点,最后的元素应该会是最大的数. 针对所有的元素重复以上 ...

  6. 选择排序_在N + 1场景中,使用@NamedEntityGraph更有选择地加载JPA实体

    选择排序 N + 1问题是使用ORM解决方案时的常见问题. 当您将某些@OneToMany关系的fetchType设置为lazy时,会发生这种情况,以便仅在访问Set / List时才加载子实体. 假 ...

  7. python lambda 判断_在Python的Filter中使用lambda函数时,为何达不到预期效果?

    最近我在学习python的时候也遇到了同样的问题,碰巧看到了这个提问,还是挺有缘分的. 先说结论:直接使用lambda表达式时filter(lambdax:x%n>0, it),n会随着代码的运 ...

  8. 降序排序_排序简单,应用不易,使用Excel排序的几点建议

    对数据排序,是数据分析中最基本.最常用也是最重要的分析方法.Excel提供了丰富.简单.灵活的排序方法和排序方式,包括单个排序.组合排序等.对于学习者短时间内掌握Excel的排序,难度不大.问题可能更 ...

  9. sql多字段求和降序排序_快速入门:Excel中如何按照多个字段排序

    Excel排序怎么排?我们经常使用表格来搜集记录信息.如果我们表格中的数据过多,而且没有进行数据的归纳总结.那应该是件让人头大的事儿,为了获得更加准确的数据,我们需要对Excel中的内容进行排序.排序 ...

最新文章

  1. 【转】用示例说明索引数据块中出现热块的场景,并给出解决方案
  2. 被人恨,但感觉不错!
  3. Ajax系列之JSON数据格式
  4. sqlbulkcopy是覆盖式更新吗_React 328道最全面试题(持续更新)
  5. 【ACM】会场安排问题
  6. 字节跳动的一面内容记录
  7. java与数据库连接的几个步骤
  8. html动态绑定树形菜单,jQuery ztree实现动态树形多选菜单
  9. java基础之输入语句
  10. 微信公众平台开发,图文回复、access_token生成调用、以及微信SDK的实现(2)
  11. Proguard混淆器
  12. *理解JavaWeb目录结构
  13. 《二叉平衡树(一)》
  14. SEO商务谈判技巧,常见的5个措施有哪些?
  15. InterSystems开发者关系主管Dean:集成FHIR,改变游戏规则
  16. Hive-时间日期trunc-日期与数字截取函数
  17. cadence SPB17.4 - 取消(删除)扇出
  18. 大学生应知道50件事
  19. fseek函数的应用
  20. elementUI el-table设置fixed后,竖向滚动条滚动到底部表格错位的问题(修改源码)

热门文章

  1. Linux深入学习专业书
  2. Windows安装梯度提升开发库LightGBM
  3. systemd教程推荐
  4. Electron开发入门
  5. Flume实操(四)【单数据源多出口案例(选择器)】
  6. C++ 静态线性表的顺序存储结构(数组实现)
  7. 小师妹学JavaIO之:文件编码和字符集Unicode
  8. 洛谷—P1307 数字反转
  9. Fetch API——简化你的AJAX
  10. 【通俗易懂】什么是状态机?