m0_46700664 2021-01-18 21:45 采纳率: 0%
浏览 192

python里面的lambda和sort的问题

这段代码会出现TypeError: There are no type variables left in dict[{'id': '1001', 'name': '张三', 'english': 100, 'python': 100, 'java': 100}]这个问题,是为什么呢?

```
mode=input('请选择排序方式(1.按英语成绩排序 2.按python成绩排序 3.按java成绩排序 0.按总成绩排序)')
    if mode=='1':
        student_new.sort(key=lambda a:int(a['english']),reverse=asc_or_desc_bool)
    elif mode=='2':
        student_new.sort(key=lambda x:int(x['python']),reverse=asc_or_desc_bool)
    elif mode=='3':
        student_new.sort(key=lambda x:int(x['java']),reverse=asc_or_desc_bool)
    elif mode=='0':
        student_new.sort(key=lambda x:int(x['english'])+int(x['python'])+int(x['java']),reverse=asc_or_desc_bool)
    else:
```

  • 写回答

1条回答 默认 最新

  • coagenth 2021-01-19 01:22
    关注

    用pandas中sort_values()函数能解决这个问题,而且数据看起来更直观。

    import pandas as pd
    student =[{'id': '1001', 'name': '张三', 'english': 100, 'python': 100, 'java': 100}, {'id': '1002', 'name': '赵四', 'english': 90, 'python': 80, 'java': 95}, {'id': '1003', 'name': '王五', 'english': 76, 'python': 60, 'java': 77}, {'id': '1004', 'name': '李六', 'english': 55, 'python': 66, 'java': 56}, {'id': '1005', 'name': '陈七', 'english': 88, 'python': 86, 'java': 71}]
    df=pd.DataFrame.from_records(student)
    print(df)
    
    mode = input('请选择排序方式(1.按英语成绩排序 2.按python成绩排序 3.按java成绩排序 0.按总成绩排序)')
    if mode == '1':
        student_new = df.sort_values(['english'],ascending=False)
        print(student_new)
    elif mode == '2':
        # reverse=asc_or_desc_bool
        student_new = df.sort_values(['python'], ascending=False)
        print(student_new)
    elif mode == '3':
        student_new = df.sort_values(['java'], ascending=False)
        print(student_new)
    elif mode == '0':
        student_new=df.sort_values(['english']+['python']+['java'],axis=0,ascending=False)
        student_new['total'] = df['english']+df['python']+df['java']
        print(student_new)
    else:
        pass
    
    评论

报告相同问题?

悬赏问题

  • ¥35 平滑拟合曲线该如何生成
  • ¥100 c语言,请帮蒟蒻写一个题的范例作参考
  • ¥15 名为“Product”的列已属于此 DataTable
  • ¥15 安卓adb backup备份应用数据失败
  • ¥15 eclipse运行项目时遇到的问题
  • ¥15 关于#c##的问题:最近需要用CAT工具Trados进行一些开发
  • ¥15 南大pa1 小游戏没有界面,并且报了如下错误,尝试过换显卡驱动,但是好像不行
  • ¥15 自己瞎改改,结果现在又运行不了了
  • ¥15 链式存储应该如何解决
  • ¥15 没有证书,nginx怎么反向代理到只能接受https的公网网站