python sorted用法
python列表排序 python字典排序 sorted
List的元素可以是各种东西,字符串,字典,自己定义的类等。
sorted函数用法如下:
sorted(data, cmp=None, key=None, reverse=False)
其中,data是待排序数据,可以使List或者iterator, cmp和key都是函数,这两个函数作用与data的元素上产生一个结果,sorted方法根据这个结果来排序。 
cmp(e1, e2) 是带两个参数的比较函数, 返回值: 负数: e1 < e2, 0: e1 == e2, 正数: e1 > e2. 默认为 None, 即用内建的比较函数. 
key 是带一个参数的函数, 用来为每个元素提取比较值. 默认为 None, 即直接比较每个元素. 
通常, key 和 reverse 比 cmp 快很多, 因为对每个元素它们只处理一次; 而 cmp 会处理多次.
通过例子来说明sorted的用法:
1. 对由tuple组成的List排序
students = [('john', 'A', 15), ('jane', 'B', 12), ('dave', 'B', 10),]
用key函数排序
用cmp函数排序
用 operator 函数来加快速度, 上面排序等价于:(itemgetter的用法见 注释2)
用 operator 函数进行多级排序
2. 对由字典排序
python sorted用法的更多相关文章
- python sorted排序用法详解
		
sorted排序 python sorted 排序 1. operator函数在介绍sorted函数之前需要了解一下operator函数. operator函数是python的内置函数,提供了一系列常 ...
 - python sorted排序
		
python sorted排序 Python不仅提供了list.sort()方法来实现列表的排序,而且提供了内建sorted()函数来实现对复杂列表的排序以及按照字典的key和value进行排序. s ...
 - Python高级用法
		
Python高级用法 三元表达式 x = 10 y = 20 print(x if x > y else y) x = 100 y = 20 print(x if x > y else y ...
 - Python高级用法总结
		
Python很棒,它有很多高级用法值得细细思索,学习使用.本文将根据日常使用,总结介绍Python的一组高级特性,包括:列表推导式.迭代器和生成器.装饰器. 列表推导(list comprehensi ...
 - python argparse用法总结
		
转:python argparse用法总结 1. argparse介绍 argparse是python的一个命令行解析包,非常适合用来编写可读性非常好的程序. 2. 基本用法 prog.py是我在li ...
 - Anaconda下载及安装及查看安装的Python库用法
		
Anaconda下载及安装及查看安装的Python库用法 Anaconda 是一个用于科学计算的 Python 发行版,提供了包管理与环境管理的功能.Anaconda 利用 conda 来进行 pac ...
 - python enumerate用法总结【转】
		
enumerate()说明 enumerate()是python的内置函数 enumerate在字典上是枚举.列举的意思 对于一个可迭代的(iterable)/可遍历的对象(如列表.字符串),enum ...
 - Python sorted 函数
		
Python sorted 函数 sorted 可以对所有可迭代的对象进行排序操作,sorted 方法返回的是一个新的 list,而不是在原来的基础上进行的操作.从新排序列表. sorted 语法: ...
 - Python sorted list的实现
		
Python sorted list的实现 具体思路是用二分保list有序+插入 class SortedList(list): K = -1 def __init__(self, K=-1): li ...
 
随机推荐
- 浅析LRU(K-V)缓存
			
LRU(Least Recently Used)算法是缓存技术中的一种常见思想,顾名思义,最近最少使用,也就是说有两个维度来衡量,一个是时间(最近),一个频率(最少).如果需要按优先级来对缓存中的K- ...
 - LeetCode——LRU Cache
			
Description: Design and implement a data structure for Least Recently Used (LRU) cache. It should su ...
 - 谈HTTP的KeepAlive
			
为什么要使用KeepAlive? 终极的原因就是需要加快客户端和服务端的访问请求速度.KeepAlive就是浏览器和服务端之间保持长连接,这个连接是可以复用的.当客户端发送一次请求,收到相应以后,第二 ...
 - 基于HTML5的电信网管3D机房监控应用
			
先上段视频,不是在玩游戏哦,是规规矩矩的电信网管企业应用,嗯,全键盘的漫游3D机房: 随着PC端支持HTML5浏览器的普及,加上主流移动终端Android和iOS都已支持HTML5技术,新一代的电信网 ...
 - 前端翻译:Activating Browser Modes with Doctype
			
一.前言 原本备份: http://www.cnblogs.com/fsjohnhuang/p/3830623.html 由于本人英语能力有限,译本内容难免有误,望各位指正! 本译文不含附录部分,请知 ...
 - C#序列化JSON
			
public static string ConvertToJsonString<T>(T instance) { using (MemoryStream stre ...
 - nopcommerce3.5源代码及中文语言包下载地址
			
nopcommerce3.5源代码下载地址 http://download-codeplex.sec.s-msft.com/Download/SourceControlFileDownload.ash ...
 - vs2015 Android SDK
			
It was not possible to complete an automatic installation. This might be due to a problem with your ...
 - 【C#】委托
			
一.委托的基本的写法 internal class Program { private static void Main(string[] args) { ChainDelegate(); Conso ...
 - BI之SSAS完整实战教程4 -- 部署至SSAS进行简单分析
			
上一篇已经创建了多维数据集的结构. 接下来我们将多维数据集的架构定义发送到Analysis Services实例,部署到AS上去. 文章提纲 部署和浏览多维数据集 SSMS使用简介 总结 一.部署和浏 ...