python sort 多级排序_为什么在python中使用排序功能进行多级排序...
这篇文章与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中使用排序功能进行多级排序...相关推荐
- java中如何按名字来排序_如何在Java中对名称和年龄进行排序
我是Java 8的新手,我只想按名称排序.但条件是:如果名称重复,则应根据年龄对其进行排序. 例如我的输入是 tarun 28 arun 29 varun 12 arun 22 并且输出应该是 aru ...
- .Net 6.0中的新增特性_.Net 6.0中的新增功能
.Net 6.0中的新增特性_.Net 6.0中的新增功能 一..Net 6 介绍 .NET 6 作为 LTS 长期支持版本,.NET 6 将会获得 3 年的技术支持. .NET 6 是首个原生支持 ...
- python set 排序_python set 排序_如何在Python中使用sorted()和sort()
点击"蓝字"关注我们 ?"Python基础知识" 大卫·丰达科夫斯基 著 18财税3班 李潇潇 译 日期:2019年5月6日 一. 使用sorted() ...
- python字典怎么排序_如何对python的字典进行排序
我们知道Python的内置dictionary数据类型是无序的,通过key来获取对应的value.可是有时我们需要对dictionary中 的item进行排序输出,可能根据key,也可能根据value ...
- python列表内数字排序_如何在Python中手动排序数字列表?
规格:Ubuntu 13.04,Python 3.3.1 背景:Python的初学者,遇到了这个"手动排序"的问题. 我被要求做的是:"让用户输入3个数值并将它们存储在3 ...
- python包括哪些部分_第一部分 Python基础篇
第⼀一部分 Python基础篇 1. 为什什么学习Python? 朋友推荐,比较简单易学,生态圈比较强大 发展趋势:人工智能.数据分析 2. 通过什什么途径学习的Python? 廖雪峰.网络博客.相关 ...
- python xlwings追加数据_大数据分析Python库xlwings提升Excel工作效率教程
原标题:大数据分析Python库xlwings提升Excel工作效率教程 Excel在当今的企业中非常非常普遍.在AAA教育,我们通常建议出于很多原因使用代码,并且我们的许多数据科学课程旨在教授数据分 ...
- 用python计算复利计算器_第一章 Python简介
全览: Python的大部分基本特性:如变量.表达式.控制流.函数.生成器.类和输入\输出: Python3和Python2.6的区别:大多数与打印和I/O有关: ------------------ ...
- python的执行过程_在交互式环境中执行Python程序过程详解
前言 相信接触过Python的伙伴们都知道运行Python脚本程序的方式有多种,目前主要的方式有:交互式环境运行.命令行窗口运行.开发工具上运行等,其中在不同的操作平台上还互不相同.今天,小编讲些Py ...
- python gui开发工具_深入解析Python,透析应用开发,涵盖9大应用领域的Python框架...
前言 当前,Python 已经成为最流行的程序设计语言之一,被越来越多的人作为首选语言来学习和应用.作为一种解释型的语言,Python具有内置的高级数据结构和简单有效的面向对象编程机制.同时,其语法简 ...
最新文章
- Kamailio v4.4.6 发布,开源 SIP 服务器
- asp.net的JSON数据进行序列化和反序列化
- DNS tunnel的原理及实战
- 求数组中的最大数,最小数。
- 特定于数据中心的人工智能完成任务的速度可以提高两倍
- 【吉林】2021年下半年软考报考时间及通知
- 接口测试工具_接口测试工具Jmeter与postman - 瞎扯
- [Web开发] IE8 网页开发参考文档
- Hdoj 2563.统计问题 题解
- hdu 4908 BestCoder Sequence
- sass函数:@function
- 游戏开发中的那点英语
- 阿里云OSS上传图片教程-附案例
- canvas练习 - 七巧板绘制
- 无光驱、软驱、USB全NTFS格式硬盘上安装WinXP
- 为什么下载小电影时,经常会卡在 99%?
- 老狗——python求中位数
- 义隆单片机学习笔记之(二) 指令系统
- 在线英语广播==好好学习,天天向上
- Web3的流支付代表Zebec,熊市布局的价值逻辑
热门文章
- 多径传播matlab仿真·信号分析处理
- 一图胜千言!Python数据可视化多维讲解
- 如何创建 Angular library 并在生产环境中消费
- SAP Spartacus 如何重定义登录 Login Component
- SAP Spartacus 登录超链接的 slot 并未出现在 page OCC API 响应里
- 关于用 ABAP 代码手动触发 SAP CRM organization Model 自动决定的研究
- SAP Fiori 应用的本地 sandbox Launchpad - 出于测试用途
- SAP Spartacus cost-center.config.ts里定义的paramsMapping
- Java Spring里com.mysql.jdbc.Driver的加载时机
- SAP云平台上两个ABAP系统实例之间的互连