m0_70680242 2022-07-01 17:39 采纳率: 82.2%
浏览 30
已结题

关于sort_key的值需要是函数的问题

原题于评论https://ask.csdn.net/questions/7751642?answer=53837208&username=m0_70680242&utm_medium=notify.im.haveAnswer.a
若key的值要求为函数故自定义函数

def studnet_max(i):
    i = max(students(["grade"]))
    return
student_sort = sorted(students,key=max(students))

这样找到的直接就是字符串了,找不到值,所以报错
尝试写值


a = max(s, key=lambda x: x['grade']
print(a)

这样只能输出一条,那错的更离谱
用def 的话一般会怎么写?

  • 写回答

1条回答 默认 最新

  • CSDN-Ada助手 CSDN-AI 官方账号 2022-07-02 19:01
    关注

    你好,我是程序员Ada,我猜你是不想用lambda表达式写,或者不理解lambda表达式是什么,那么用普通函数也可以。

    students = [
        {"sno":101,"name":"小张","grade":88},
        {"sno":102,"name":"小王","grade":90},
        {"sno":103,"name":"小李","grade":108},
        {"sno":104,"name":"小赵","grade":68},
    ]
    
    def get_sort_key(stu):
      return stu['grade']
    
    student_sort = sorted(students,key=get_sort_key)
    print(student_sort)
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 7月4日
  • 已采纳回答 7月3日
  • 修改了问题 7月2日
  • 修改了问题 7月2日
  • 展开全部

悬赏问题

  • ¥15 C++ yoloV5改写遇到的问题
  • ¥20 win11修改中文用户名路径
  • ¥15 win2012磁盘空间不足,c盘正常,d盘无法写入
  • ¥15 用土力学知识进行土坡稳定性分析与挡土墙设计
  • ¥70 PlayWright在Java上连接CDP关联本地Chrome启动失败,貌似是Windows端口转发问题
  • ¥15 帮我写一个c++工程
  • ¥30 Eclipse官网打不开,官网首页进不去,显示无法访问此页面,求解决方法
  • ¥15 关于smbclient 库的使用
  • ¥15 微信小程序协议怎么写
  • ¥15 c语言怎么用printf(“\b \b”)与getch()实现黑框里写入与删除?