python中的sort用法
内置的列表类型提供sort的方法
可以根据多项指标给list实例中的元素排序。在默认情况下,sort方法总是按照自然升序排列列表内的元素
#升序排列
list1=[2,3,1,2,5]
list1.sort()
print(list1) #[1, 2, 2, 3, 5] #降序排列可以使用指定参数reverse=True(默认是False)
list1=[2,3,1,2,5]
list1.sort(reverse=True)
print(list1) #[5, 3, 2, 2, 1]
对多个标准进行排序
在Python语言里,最简单的方案是利用元组(tuple)类型实现。元组是一种不可变的序列,能够存放任意的Python值。两个元组之间是可以比较的,因为这种类型本身已经定义了自然顺序
#元组可以比较大小,会依次比较每个位置的那两个对应元素,直到能够确定大小为止
a=(1,"a")
b=(2,"a")
print( a > b) #False c=(1,"b")
d=(1,"a")
print( c > d) #True
根据这个特性我们可以把需要比较的标准组成元组
a=[(4,"a"),(2,"b"),(4,"b"),(2,"a"),(3,"e")]
a.sort()
print(a) #[(2, 'a'), (2, 'b'), (3, 'e'), (4, 'a'), (4, 'b')] #如果我们只想特殊标准去排序可以使用关键词key
b=[(4,"a"),(2,"b"),(4,"b"),(2,"a"),(3,"e")]
#只按第一个标准去排序,如果第一个标准判断一致,则按原顺序排序
b.sort(key = lambda x : x[0])
print(b) #[(2, 'b'), (2, 'a'), (3, 'e'), (4, 'a'), (4, 'b')]
组合:
#按第一个标准去降序排序(这里用到一个一元减操作符),第二个参数升序
c=[(4,"a"),(2,"b"),(4,"b"),(2,"a"),(3,"e")]
c.sort(key = lambda x : (-x[0],x[1]))
print(c) #[(4, 'a'), (4, 'b'), (3, 'e'), (2, 'a'), (2, 'b')]
python中的sort用法的更多相关文章
- python 中del 的用法
python中的del用法比较特殊,新手学习往往产生误解,弄清del的用法,可以帮助深入理解python的内存方面的问题. python的del不同于C的free和C++的delete. 由于pyth ...
- python中argparse模块用法实例详解
python中argparse模块用法实例详解 这篇文章主要介绍了python中argparse模块用法,以实例形式较为详细的分析了argparse模块解析命令行参数的使用技巧,需要的朋友可以参考下 ...
- python中的sort方法
Python中的sort()方法用于数组排序,本文以实例形式对此加以详细说明: 一.基本形式 列表有自己的sort方法,其对列表进行原址排序,既然是原址排序,那显然元组不可能拥有这种方法,因为元组是不 ...
- python中的sort方法使用详解
Python中的sort()方法用于数组排序,本文以实例形式对此加以详细说明: 一.基本形式 列表有自己的sort方法,其对列表进行原址排序,既然是原址排序,那显然元组不可能拥有这种方法,因为元组是不 ...
- 【313】python 中 print 函数用法总结
参考:python 中 print 函数用法总结 参考:Python print() 函数(菜鸟教程) 参考:Python 3 print 函数用法总结 目录: 字符串和数值类型 变量 格式化输出 p ...
- python中MySQLdb模块用法实例
篇文章主要介绍了python中MySQLdb模块用法,以实例形式详细讲述了MySQLdb模块针对MySQL数据库的各种常见操作方法,非常具有实用价值,需要的朋友可以参考下 本文实例讲述了python中 ...
- python中hashlib模块用法示例
python中hashlib模块用法示例 我们以前介绍过一篇Python加密的文章:Python 加密的实例详解.今天我们看看python中hashlib模块用法示例,具体如下. hashlib ha ...
- Python Deque 模块使用详解,python中yield的用法详解
Deque模块是Python标准库collections中的一项. 它提供了两端都可以操作的序列, 这意味着, 你可以在序列前后都执行添加或删除. https://blog.csdn.net/qq_3 ...
- Python中的sort()
Python中的sort()方法用于数组排序,本文以实例形式对此加以详细说明: 一.基本形式列表有自己的sort方法,其对列表进行原址排序,既然是原址排序,那显然元组不可能拥有这种方法,因为元组是不可 ...
随机推荐
- 你如何理解 Spring Boot 中的 Starters?
Starters可以理解为启动器,它包含了一系列可以集成到应用里面的依赖包,你可以一站式集成 Spring 及其他技术,而不需要到处找示例代码和依赖包.如你想使用 Spring JPA 访问数据库,只 ...
- jQuery--表单的过滤
1.表单过滤器的介绍 :input 所有表单元素(<input>/<select>/<textarea>/<button>) :text 文本框< ...
- css添加全部省略号的方式
https://css-tricks.com/line-clampin/ 框架Clamp:https://github.com/josephschmitt/Clamp.js
- Leetcode26——删除有序数组中的重复项(双指针法)
Leetcode26--删除有序数组中的重复项(双指针法) 1. 题目简述 给你一个升序排列的数组 nums ,请你原地 删除重复出现的元素,使每个元素只出现一次 ,返回删除后数组的新长度.元素的相对 ...
- 快速注册service服务
一.通过SpringContextHolder的getBean来注册service服务 导入的包:import com.bessky.platform.context.SpringContextHol ...
- 顺利通过EMC实验(3)
- PCB常用低速、高速板材参数性能(2)
- Azure DevOps 中 Dapr项目自动部署流程实践
注:本文中主要讨论 .NET6.0项目在 k8s 中运行的 Dapr 的持续集成流程, 但实际上不是Dapr的项目部署到K8s也是相同流程,只是k8s的yaml配置文件有所不同 流程选择 基于 Dap ...
- Web Storage相关
访问原文地址 概述 DOM存储的机制是通过存储字符串类型的键/值对,来提供一种安全的存取方式.这个附加功能的目标是提供一个全面的,可以用来创建交互式应用程序的方法(包括那些高级功能,例如可以离线工作一 ...
- Socket.io+Notification实现浏览器消息推送
前言 socket.io: 包含对websocket的封装,可实现服务端和客户端之前的通信.详情见官网(虽然是英文文档,但还是通俗易懂).Notification: Html5新特性,用于浏览器的桌面 ...