python3 lambda函数字典排序_排序字典表理解中的lambda函数
我有以下词典: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函数相关推荐
- python 中split函数的应用_举例详解Python中的split()函数的使用方法
函数:split() python中有split()和os.path.split()两个函数,具体作用如下: split():拆分字符串.通过指定分隔符对字符串进行切片,并返回分割后的字符串列表(li ...
- R语言广义线性模型函数GLM、R中有几种logistic回归扩展和变异、robust包中的glmRob函数鲁棒logistic回归、ms包中的lrm函数拟合序数逻辑回归
R语言广义线性模型函数GLM.glm函数构建逻辑回归模型(Logistic regression).R中有几种logistic回归扩展和变异.robust包中的glmRob函数鲁棒logistic回归 ...
- 如何在python中对列表套列表进行排序_如何实现对Python中列表的排序?
对List进行排序,Python提供了两个方法 方法1.用List的内建函数list.sort进行排序 list.sort(func=None, key=None, reverse=False) Py ...
- python集合排序_排序算法集合
#### 冒泡排序 ### 时间复杂度是: O(n^2) ### 空间复杂度是: O(1) def BubbleSort(li): for i in range(len(li)): # i = 0 f ...
- java通过比较大小排序_排序算法的比较与java实现
冒泡排序 基本思想: 比较相邻的元素.如果第一个比第二个大,就交换他们两个. 对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对.在这一点,最后的元素应该会是最大的数. 针对所有的元素重复以上 ...
- 选择排序_在N + 1场景中,使用@NamedEntityGraph更有选择地加载JPA实体
选择排序 N + 1问题是使用ORM解决方案时的常见问题. 当您将某些@OneToMany关系的fetchType设置为lazy时,会发生这种情况,以便仅在访问Set / List时才加载子实体. 假 ...
- python lambda 判断_在Python的Filter中使用lambda函数时,为何达不到预期效果?
最近我在学习python的时候也遇到了同样的问题,碰巧看到了这个提问,还是挺有缘分的. 先说结论:直接使用lambda表达式时filter(lambdax:x%n>0, it),n会随着代码的运 ...
- 降序排序_排序简单,应用不易,使用Excel排序的几点建议
对数据排序,是数据分析中最基本.最常用也是最重要的分析方法.Excel提供了丰富.简单.灵活的排序方法和排序方式,包括单个排序.组合排序等.对于学习者短时间内掌握Excel的排序,难度不大.问题可能更 ...
- sql多字段求和降序排序_快速入门:Excel中如何按照多个字段排序
Excel排序怎么排?我们经常使用表格来搜集记录信息.如果我们表格中的数据过多,而且没有进行数据的归纳总结.那应该是件让人头大的事儿,为了获得更加准确的数据,我们需要对Excel中的内容进行排序.排序 ...
最新文章
- 【转】用示例说明索引数据块中出现热块的场景,并给出解决方案
- 被人恨,但感觉不错!
- Ajax系列之JSON数据格式
- sqlbulkcopy是覆盖式更新吗_React 328道最全面试题(持续更新)
- 【ACM】会场安排问题
- 字节跳动的一面内容记录
- java与数据库连接的几个步骤
- html动态绑定树形菜单,jQuery ztree实现动态树形多选菜单
- java基础之输入语句
- 微信公众平台开发,图文回复、access_token生成调用、以及微信SDK的实现(2)
- Proguard混淆器
- *理解JavaWeb目录结构
- 《二叉平衡树(一)》
- SEO商务谈判技巧,常见的5个措施有哪些?
- InterSystems开发者关系主管Dean:集成FHIR,改变游戏规则
- Hive-时间日期trunc-日期与数字截取函数
- cadence SPB17.4 - 取消(删除)扇出
- 大学生应知道50件事
- fseek函数的应用
- elementUI el-table设置fixed后,竖向滚动条滚动到底部表格错位的问题(修改源码)