python中的sort用法
2024-10-19 21:47:08
内置的列表类型提供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')]
最新文章
- 【JUC】JDK1.8源码分析之CopyOnWriteArraySet(七)
- 用Backbone.js创建一个联系人管理系统(四)
- PHP 数组函数整理
- shell ftp上传下载文件
- Xcode6.1模拟器ios8.1模拟器不能弹出虚拟键盘及虚拟键盘无法切换中文输入的解决办法
- &;amp与&;
- 为什么C#动态调用Java的cxf多了bool型参数
- H3 BPM 跨平台表单发起详解
- phpcms 制作简单企业站的常用标签
- 如何修改HTML5 input placeholder 颜色
- 团队作业7——第二次项目冲刺(Beta版本12.10)
- [bzoj1041][HAOI2008]圆上的整点
- go语言圣经练习
- [Swift]LeetCode242. 有效的字母异位词 | Valid Anagram
- oracle 查询数据库的约束条件
- Selenium自动化测试框架的搭建
- 2java判断素数
- 【BZOJ2285】[SDOI2011]保密(分数规划,网络流)
- Paper Reading: Perceptual Generative Adversarial Networks for Small Object Detection
- [转]使用keepalived搭建主备切换环境
热门文章
- char型变量中能不能存储一个中文字符?为什么?
- kafka的message格式是什么样的?
- Java的HashMap是如何工作的?
- SpringBoot 上传文件大小限制,SizeLimitExceededException: the request was rejected because its size (64042302) exceeds the configured maximum (10485760)
- 三、MyCat主要配置介绍
- Spring 应用程序有哪些不同组件?
- idea推送项目到github
- C语言之API
- Linux中一切皆文件
- 付费漫画下载、付费韩漫下载、漫画VIP下载、VIP韩漫下载哪里下