博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
python中的列表排序
阅读量:5156 次
发布时间:2019-06-13

本文共 828 字,大约阅读时间需要 2 分钟。

对列表进行排序是常见的操作,最简单的方式是使用sort()函数。

1、一般用法

不管列表元素是数、字符串还是元组,函数sort()总是就地操作列表,按升序进行排列元素,并返回None。

#数>>> lst1 = [1, 5, 3, 2]>>> lst1.sort()>>> lst1[1, 2, 3, 5]#字符串>>> lst2 = ['up', 'down', 'left', 'right']>>> lst2.sort()>>> lst2['down', 'left', 'right', 'up']#元组>>> lst3 = [(1, -1), (3, 5), (2, 1), (1, 2)]>>> lst3.sort()>>> lst3[(1, -1), (1, 2), (2, 1), (3, 5)]

若想实现降序排列,可直接在调用sort()后再调用reverse()函数,或者使用reverse选项sort(reverse = True)。

2、使用key

使用sort()函数中的次要排序键,产生可用于排序的值的函数,即定义了排序的规则。如根据字符串的长度进行排序。

>>> lst2 = ['up', 'down', 'left', 'right']>>> lst2.sort(key = len)>>> lst2['up', 'down', 'left', 'right']

也可以传入lamdba函数。如根据各字符串不同字母的数量进行排序。

>>> strs = [ 'foo', 'card', 'bar', 'aaaa', 'abab']>>> strs.sort(key = lambda x : len(set(list(x))))>>> strs['aaaa', 'foo', 'abab', 'bar', 'card']

 

转载于:https://www.cnblogs.com/ik-heu/p/8158751.html

你可能感兴趣的文章
ASP.NET判断是否为手机登录
查看>>
离别的回忆
查看>>
4-STM32物联网开发WIFI(ESP8266)+GPRS(Air202)系统方案升级篇(远程升级WIFI内部程序)
查看>>
关于Keil4 转到 Keil5以后的一些错误解决
查看>>
推荐一个很棒的JS绘图库Flot
查看>>
uni-app,v-for时 block 和 view 的使用
查看>>
jaxp与dom4j遍历xml树
查看>>
Python字典的操作与使用
查看>>
SQL 中的连接
查看>>
老妈的教诲
查看>>
django 基础框架学习 (一)
查看>>
UML建模工具Visio、Rational Rose、PowerDesign,Visual Paradigm for UML
查看>>
HDU2191——悼念512汶川大地震遇难同胞——珍惜现在,感恩生活
查看>>
GIt 撤销修改
查看>>
理解typedef(转)
查看>>
NSNtification 在多线程中的运用
查看>>
vue 和react
查看>>
全面解读php-流程控制
查看>>
Tomcat启动报错:java.lang.NoClassDefFoundError: javax/servlet/GenericFilter
查看>>
SVN使用教程总结[转]
查看>>