当前位置:首页 > 开发 > 编程语言 > Python > 正文

python 集合排序 sorted 函数

发表于: 2012-09-13   作者:chenchao051   来源:转载   浏览次数:
摘要: Python使用sorted函数来排序:   l = [2,1,3,5,7,3] print sorted(l) 执行结果:[1, 2, 3, 3, 5, 7]    按列表每个元素,逗号前面的那个字符排序: l=['c,3','a,5','d:4','b,2','a,3'] print sorted(l,key=lambda x:x.split(',

Python使用sorted函数来排序:

 

l = [2,1,3,5,7,3]
print sorted(l)

执行结果:[1, 2, 3, 3, 5, 7]

 

 按列表每个元素,逗号前面的那个字符排序:

l=['c,3','a,5','d:4','b,2','a,3']
print sorted(l,key=lambda x:x.split(',')[0])

执行结果:['a,5', 'a,3', 'b,2', 'c,3', 'd:4']

 

也可以加上第二排序关键字:

l=['c,3','a,5','d,4','b,2','a,3']
print sorted(l,key=lambda x:(x.split(',')[0],x.split(',')[1]))

 执行结果:['a,3', 'a,5', 'b,2', 'c,3', 'd,4']

 

 按逗号后面的元素从大到小排列:

l=['c,3','a,5','d,4','b,2','a,3']
print sorted(l,cmp=lambda x,y:cmp(int(y.split(',')[1]),int(x.split(',')[1])))

 执行结果:['a,5', 'd,4', 'c,3', 'a,3', 'b,2']

 

 

字典排序也与其类似。

按key排序:

d={'b':2,'a':1,'d':4,'c':3}
print sorted(d.items(),key=lambda x:x[0])

 执行结果:[('a', 1), ('b', 2), ('c', 3), ('d', 4)]

 

按value排序:

d={'b':2,'a':1,'d':4,'c':3}
print sorted(d.items(),key=lambda x:x[1])

 执行结果:[('a', 1), ('b', 2), ('c', 3), ('d', 4)]

 

按value反序:

d={'b':2,'a':1,'d':4,'c':3}  
print sorted(d.items(),cmp=lambda x,y : cmp(int(y[1]),int(x[1])))

 

注意,sorted返回的是一个序列

 

python 集合排序 sorted 函数

  • 0

    开心

    开心

  • 0

    板砖

    板砖

  • 0

    感动

    感动

  • 0

    有用

    有用

  • 0

    疑问

    疑问

  • 0

    难过

    难过

  • 0

    无聊

    无聊

  • 0

    震惊

    震惊

编辑推荐
1.1 集合框架概述 1.1.1 容器简介 到目前为止,我们已经学习了如何创建多个不同的对象,定义了这些
本文继续讲解List<T>之排序操作,C#范型List类的Sort方法有四种形式,分别是: 1、不带有任何
最近在使用java 的PriorityBlockingQueue 发现其排序使用的是堆排序 ,于是借这个周末翻了一下大学
快速排序使用分治法 (Divide and conquer)策略来把一个串行 (list)分为两个子串行(sub-lists)
python 字典排序 http://www.cnblogs.com/kaituorensheng/archive/2012/08/07/2627386.html 引子 字
引子 字典,形如 dic = {'a':1 , 'b':2 , 'c': 3},字典中的元素没有顺序,所以dic[0]是有语法错误的
一、目录 1、集合概述 2、关于集合的操作符、关系符号 3、集合的一系列操作(添加、更新、访问、删除
对保存在数组中的相关数据进行排序是一件非常有意义的事情。在PHP中提供了很多函数可以对数组进行排
本例效果图: 代码文件: unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Class
package com.dc.product.entity.res; // Generated 2014-11-28 16:53:22 by Hibernate Tools 3.4.0.
版权所有 IT知识库 CopyRight © 2009-2015 IT知识库 IT610.com , All Rights Reserved. 京ICP备09083238号