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 使用yolov5-7.0目标检测报错
  • ¥15 对于这个问题的解释说明
  • ¥200 询问:python实现大地主题正反算的程序设计,有偿
  • ¥15 smptlib使用465端口发送邮件失败
  • ¥200 总是报错,能帮助用python实现程序实现高斯正反算吗?有偿
  • ¥15 对于squad数据集的基于bert模型的微调
  • ¥15 为什么我运行这个网络会出现以下报错?CRNN神经网络
  • ¥20 steam下载游戏占用内存
  • ¥15 CST保存项目时失败
  • ¥20 java在应用程序里获取不到扬声器设备