这篇文章与How do I sort a list of dictionaries by values of the dictionary in Python?不同,我认为无法使用lambda sort解决,因为应该对两个属性进行排序,一个是升序,另一个是降序.

我认为答案应该是

在第2列下降并在第3列上升

[1, 5, 7]

[2, 3, 4]

[3, 2, 2]

[1, 2, 3]

[4, 2, 9]

[3, 1, 9]

但输出是:

[1, 5, 7]

[2, 3, 4]

[1, 2, 3]

**[3, 2, 2]** i think it's wrong here

[4, 2, 9]

[3, 1, 9]

代码如下

l=[

[1,2,3],

[2,3,4],

[1,5,7],

[3,1,9],

[3,2,2],

[4,2,9]

]

def printlist(l):

for ll in l:

print ll

def comp1(a,b):

if a[1]

return 1

if a[1]==b[1]:

return a[2]>b[2]

else:

return -1

l3=sorted(l,cmp=comp1)

printlist(l3)

那么为什么程序输出错误的答案呢?

编辑1:

在这里,我选择cmp而不是key = itemgetter(2,3),因为它可能存在更复杂的结构,无法使用itemgetter进行排序,而只能使用cmp函数进行排序.

python sort 多级排序_为什么在python中使用排序功能进行多级排序...相关推荐

  1. java中如何按名字来排序_如何在Java中对名称和年龄进行排序

    我是Java 8的新手,我只想按名称排序.但条件是:如果名称重复,则应根据年龄对其进行排序. 例如我的输入是 tarun 28 arun 29 varun 12 arun 22 并且输出应该是 aru ...

  2. .Net 6.0中的新增特性_.Net 6.0中的新增功能

    .Net 6.0中的新增特性_.Net 6.0中的新增功能 一..Net 6 介绍 .NET 6 作为 LTS 长期支持版本,.NET 6 将会获得 3 年的技术支持. .NET 6 是首个原生支持 ...

  3. python set 排序_python set 排序_如何在Python中使用sorted()和sort()

    点击"蓝字"关注我们 ?"Python基础知识" 大卫·丰达科夫斯基  著 18财税3班 李潇潇    译 日期:2019年5月6日 一. 使用sorted() ...

  4. python字典怎么排序_如何对python的字典进行排序

    我们知道Python的内置dictionary数据类型是无序的,通过key来获取对应的value.可是有时我们需要对dictionary中 的item进行排序输出,可能根据key,也可能根据value ...

  5. python列表内数字排序_如何在Python中手动排序数字列表?

    规格:Ubuntu 13.04,Python 3.3.1 背景:Python的初学者,遇到了这个"手动排序"的问题. 我被要求做的是:"让用户输入3个数值并将它们存储在3 ...

  6. python包括哪些部分_第一部分 Python基础篇

    第⼀一部分 Python基础篇 1. 为什什么学习Python? 朋友推荐,比较简单易学,生态圈比较强大 发展趋势:人工智能.数据分析 2. 通过什什么途径学习的Python? 廖雪峰.网络博客.相关 ...

  7. python xlwings追加数据_大数据分析Python库xlwings提升Excel工作效率教程

    原标题:大数据分析Python库xlwings提升Excel工作效率教程 Excel在当今的企业中非常非常普遍.在AAA教育,我们通常建议出于很多原因使用代码,并且我们的许多数据科学课程旨在教授数据分 ...

  8. 用python计算复利计算器_第一章 Python简介

    全览: Python的大部分基本特性:如变量.表达式.控制流.函数.生成器.类和输入\输出: Python3和Python2.6的区别:大多数与打印和I/O有关: ------------------ ...

  9. python的执行过程_在交互式环境中执行Python程序过程详解

    前言 相信接触过Python的伙伴们都知道运行Python脚本程序的方式有多种,目前主要的方式有:交互式环境运行.命令行窗口运行.开发工具上运行等,其中在不同的操作平台上还互不相同.今天,小编讲些Py ...

  10. python gui开发工具_深入解析Python,透析应用开发,涵盖9大应用领域的Python框架...

    前言 当前,Python 已经成为最流行的程序设计语言之一,被越来越多的人作为首选语言来学习和应用.作为一种解释型的语言,Python具有内置的高级数据结构和简单有效的面向对象编程机制.同时,其语法简 ...

最新文章

  1. Kamailio v4.4.6 发布,开源 SIP 服务器
  2. asp.net的JSON数据进行序列化和反序列化
  3. DNS tunnel的原理及实战
  4. 求数组中的最大数,最小数。
  5. 特定于数据中心的人工智能完成任务的速度可以提高两倍
  6. 【吉林】2021年下半年软考报考时间及通知
  7. 接口测试工具_接口测试工具Jmeter与postman - 瞎扯
  8. [Web开发] IE8 网页开发参考文档
  9. Hdoj 2563.统计问题 题解
  10. hdu 4908 BestCoder Sequence
  11. sass函数:@function
  12. 游戏开发中的那点英语
  13. 阿里云OSS上传图片教程-附案例
  14. canvas练习 - 七巧板绘制
  15. 无光驱、软驱、USB全NTFS格式硬盘上安装WinXP
  16. 为什么下载小电影时,经常会卡在 99%?
  17. 老狗——python求中位数
  18. 义隆单片机学习笔记之(二) 指令系统
  19. 在线英语广播==好好学习,天天向上
  20. Web3的流支付代表Zebec,熊市布局的价值逻辑

热门文章

  1. 多径传播matlab仿真·信号分析处理
  2. 一图胜千言!Python数据可视化多维讲解
  3. 如何创建 Angular library 并在生产环境中消费
  4. SAP Spartacus 如何重定义登录 Login Component
  5. SAP Spartacus 登录超链接的 slot 并未出现在 page OCC API 响应里
  6. 关于用 ABAP 代码手动触发 SAP CRM organization Model 自动决定的研究
  7. SAP Fiori 应用的本地 sandbox Launchpad - 出于测试用途
  8. SAP Spartacus cost-center.config.ts里定义的paramsMapping
  9. Java Spring里com.mysql.jdbc.Driver的加载时机
  10. SAP云平台上两个ABAP系统实例之间的互连