sunflower758 2022-02-20 18:25 采纳率: 86.5%
浏览 33
已结题

python 字典键值对的排序




d = {'a':1,'b':4,'c':2}
 
sorted(d.items(),key = lambda x:x[1],reverse = True)

对于字典的键值对排序时我有两个地方不明白:
1.key = lambda x 这个匿名函数是干什么的
2.为什么非要是“key”,换成其他变量为什么不行

  • 写回答

1条回答 默认 最新

  • 谛凌 2022-02-20 18:35
    关注
    • 先说2 这个不可以改,key是sorted函数的一个参数,你不可以修改,表示sorted按照数据的哪个部分进行排序
    • 再说1,因为要按值排序,而使用的数据是d.items()在,这是一个列表(此处是 dict_items([('a', 1), ('b', 4), ('c', 2)]) ),每个键值对构成一个元组,所以为了获取每个键值对的值进行排序,传给参数key,所以使用lambda函数,将lambda函数(冒号前是参数,冒号后是返回值)的参数x,返回x[1]来索引得到键值对的值

      img

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录

报告相同问题?

问题事件

  • 系统已结题 2月28日
  • 已采纳回答 2月20日
  • 创建了问题 2月20日

悬赏问题

  • ¥15 做个有关计算的小程序
  • ¥15 MPI读取tif文件无法正常给各进程分配路径
  • ¥15 如何用MATLAB实现以下三个公式(有相互嵌套)
  • ¥30 关于#算法#的问题:运用EViews第九版本进行一系列计量经济学的时间数列数据回归分析预测问题 求各位帮我解答一下
  • ¥15 setInterval 页面闪烁,怎么解决
  • ¥15 如何让企业微信机器人实现消息汇总整合
  • ¥50 关于#ui#的问题:做yolov8的ui界面出现的问题
  • ¥15 如何用Python爬取各高校教师公开的教育和工作经历
  • ¥15 TLE9879QXA40 电机驱动
  • ¥20 对于工程问题的非线性数学模型进行线性化