参考:Python 内置函数sorted()在高级用法 - Brad1994 - 博客园

sorted 函数主要实现的就是对于可迭代对象进行排序,对于一维数据排序很好理解与实现,直接调用即可,本文主要讲解对于二维数据的调用,以及字典的调用。

语法如下: sorted(iterable[, cmp[, key[, reverse]]])

  • iterable:可迭代对象,列表、数组、字典
  • key:对于二维数据指定需要排序的列
  • reverse:True 降序,False 升序(默认)

示例如下:

>>> list1 = [[2,3],
[4,2],
[8,1],
[3,4],
[5,9]]
>>> sorted(list1, key=lambda x:x[0])
[[2, 3], [3, 4], [4, 2], [5, 9], [8, 1]]
>>> sorted(list1, key=lambda x:x[1])
[[8, 1], [4, 2], [2, 3], [3, 4], [5, 9]] >>> array1 = np.array(list1)
>>> array1
array([[2, 3],
[4, 2],
[8, 1],
[3, 4],
[5, 9]])
>>> np.array(sorted(array1, key=lambda x:x[0]))
array([[2, 3],
[3, 4],
[4, 2],
[5, 9],
[8, 1]])
>>> np.array(sorted(array1, key=lambda x:x[1]))
array([[8, 1],
[4, 2],
[2, 3],
[3, 4],
[5, 9]]) >>> dict = {'e': 1, 'd': 6, 'b': 3}
>>> sorted(dict.items(), key=lambda x:x[0])
[('b', 3), ('d', 6), ('e', 1)]
>>> sorted(dict.items(), key=lambda x:x[1])
[('e', 1), ('b', 3), ('d', 6)]

主要是通过 lambda 函数说明需要排序的列,对于字典要特别注意,需要使用 .items() 来实现

【357】sorted 函数高级用法的更多相关文章

  1. Python 内置函数sorted()在高级用法

    对于Python内置函数sorted(),先拿来跟list(列表)中的成员函数list.sort()进行下对比.在本质上,list的排序和内建函数sorted的排序是差不多的,连参数都基本上是一样的. ...

  2. [转].Python中sorted函数的用法

    [Python] sorted函数 我们需要对List.Dict进行排序,Python提供了两个方法对给定的List L进行排序,方法1.用List的成员函数sort进行排序,在本地进行排序,不返回副 ...

  3. Python中sorted函数的用法(转)

    [Python] sorted函数 我们需要对List.Dict进行排序,Python提供了两个方法 对给定的List L进行排序, 方法1.用List的成员函数sort进行排序,在本地进行排序,不返 ...

  4. python中sorted()函数的用法

    一. 定义 sorted()函数对所有可迭代的对象进行排序操作 二. 语法 sorted(iterable [, key[, reverse]]]) iterable:可迭代对象 key:主要是用来进 ...

  5. python——掌握sorted函数的用法

    看本篇文章的前提是掌握 00函数的基本概念.01函数参数传递方式 可参考本人博客文章 sorted函数 是一个内建函数,接收一个可迭代对象,按照指定类型.指定顺序进行排序,特点是返回一个新的列表,不改 ...

  6. 多维数组sorted函数的用法

    对某一个位置排列 l=[[1,5,7,9],[5,10,6,11],[4,2,1,4]] newlist=sorted(l,key=lambda iterm : iterm[0],reverse=Tr ...

  7. 17.Python print()函数高级用法

    前面使用 print() 函数时,都只输出了一个变量,但实际上 print() 函数完全可以同时输出多个变量,而且它具有更多丰富的功能. print() 函数的详细语法格式如下: print (val ...

  8. Oracle-Over()函数高级用法

  9. python——自行实现sorted函数

    仿照内建函数sorted,自行实现一个sort函数,能够为列表进行排序 看下面实例的前提是掌握 0.掌握sorted函数的用法.1.函数基本概念.2.函数是如何传参的.3.掌握三元表达式.4.掌握内建 ...

随机推荐

  1. 总结一下连日来在MAC下被Python3设下的坑

    当时的情况:mac下自带python2, 1.安装pyhon3: 首次从官网下载了安装包安装,安装目录在/Library/Frameworks/Python.framework/Versions/3. ...

  2. 虚拟机挂载光盘,同时修改yum源为光盘挂载目录

    VMware下挂载光盘并安装文件https://blog.csdn.net/gfd54gd5f46/article/details/53968293 linux修改yum本地源的方法https://w ...

  3. WebSocket 跨域

    http://www.cnblogs.com/joeymary/p/5259464.html

  4. 第5章 IP地址和子网划分(2)_IP地址分类和NAT技术

    3. IP地址的分类 (1)五类IP地址 (2)数轴表示法 4. 保留地址 (1)网段的地址:主机ID全0.如192.168.100.0/24,其中的192.168.10.0指的是网段. (2)广播地 ...

  5. C++ 调用 Lua

    直接上代码: 1:c++代码 #include <lua.hpp> #include <LuaBridge/LuaBridge.h> #include <iostream ...

  6. requests模块的cookie和代理操作

    一.基于requests模块的cookie操作 引言:有些时候,我们在使用爬虫程序去爬取一些用户相关信息的数据(爬取张三“人人网”个人主页数据)时,如果使用之前requests模块常规操作时,往往达不 ...

  7. BZOJ4195 luoguP1955 NOI2015D1T1 程序自动分析

    题意:给定n个(xi = xj) 或 (xi != xj) 的条件,问是否可能成立 BZOJ链接:http://www.lydsy.com/JudgeOnline/problem.php?id=419 ...

  8. 《机器学习实战》AdaBoost算法(手稿+代码)

    Adaboost:多个弱分类器组成一个强分类器,按照每个弱分类器的作用大小给予不同的权重 一.Adaboost理论部分 1.1 adaboost运行过程 注释:算法是利用指数函数降低误差,运行过程通过 ...

  9. 20165205 预习作业三 Linux安装及学习

    Linux安装及学习 安装Ubuntu 1)安装版本 在安装VirtualBox时选择了VirtualBox 5.2.6 platform package 安装Ubuntu时选择了Ubuntu 16. ...

  10. 【转】 C#操作FTP

    代码不要忘记引入命名空间using System.Net;using System.IO;下面的几个步骤包括了使用FtpWebRequest类实现ftp功能的一般过程1.创建一个FtpWebReque ...