python中的列表排序
对列表进行排序是常见的操作,最简单的方式是使用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
python中的列表排序相关推荐
- python中对列表排序_在Python中对嵌套列表进行排序和分组
在Python中对嵌套列表进行排序和分组 我具有以下数据结构(列表列表) [ ['4', '21', '1', '14', '2008-10-24 15:42:58'], ['3', '22', '4 ...
- python中对列表排序,去重
import sanitize import get_data #(1)方法一:对文件一个个进行打开以及去空格等处理成一个字符串的列表 '''with open('james.txt') as jaf ...
- 如何在Python中反转列表?
如何在Python中执行以下操作? array = [0, 10, 20, 40] for (i = array.length() - 1; i >= 0; i--) 我需要一个数组的元素,但是 ...
- 零基础Python完全自学教程15:Python中的列表
欢迎你来到站长学堂,学习站长在线出品的在线课程<零基础 Python完全自学教程>今天给大家分享的是第14课< Python中的列表 >.本节课是一个大课,我分了这些知识点进行 ...
- python中字典列表元组_Python中的列表和元组
python中字典列表元组 Lists and tuples are arguably Python's most versatile, useful data types. You will fin ...
- 逗号分隔的字符串转换为Python中的列表 split
将逗号分隔的字符串转换为Python中的列表 给定一个字符串: 它是由逗号分隔的几个值的序列: mStr = '192.168.1.1,192.168.1.2,192.168.1.3' 如何将字符串转 ...
- python中创建列表[]和list()哪个效率快?为什么快?快多少呢?
python中创建列表的两种方式: # 方法一:使用成对的方括号语法 list_a = []# 方法二:使用内置的 list() list_b = list() 1. [] 是 list() 的三-四 ...
- 这12种方法轻松合并Python中的列表
我喜欢12这个数字,因为有太多的事情与12有关.一年有12个月;古代用12个时辰(地支)表示一天的时间.用一纪表示12年;希腊有12主神;黄道有12宫;撒迦利亚.西琴先生的<地球编年史>中 ...
- 从python中的列表中获取唯一值[重复]
本文翻译自:Get unique values from a list in python [duplicate] This question already has an answer here: ...
最新文章
- WCF分布式开发步步为赢(12):WCF事务机制(Transaction)和分布式事务编程
- linux oracle停启,linux下Oracle自动启动与停止总结
- matlab中所遇到的问题,【总结】【matlab】【机器学习】学习过程中遇到的问题总结...
- 【LeetCode从零单排】No221.Maximal Square
- (整理)ubuntu10.10安装低版本的编译器(低版本)(gcc)(ubuntu)
- CVE(Common Vulnerabilities and Exposures通用漏洞披露)笔记
- css3 固定,CSS3 calc()不适用于固定位置/绝对位置
- Docker常见问题总结
- (转)Android开发书籍推荐:从入门到精通系列学习路线书籍介绍
- java 各省市区代码表
- kitti pkl可视化,KITTI数据集格式说明
- mysql数据生成词云图,7个好用的在线词云生成工具
- Android APK反编译得到Java源代码和资源文件
- CF1313C Skyscrapers
- (13.1.1)PMBOK之一:运营,项目、项目集、项目组合、组织战略及其管理
- 简单教学 apache 配置 Expire/Cache-Control 头
- 北航新版选课系统科学选课教程
- 当你看不清自己的时候,读一些句子会有启发
- 云原生钻石课程 | 第6课:Kubernetes网络架构原理深度剖析(上)
- davinci 达芬奇BI工具
热门文章
- macos php开发环境,macOS 10.13 High Sierra PHP开发环境配置
- web前端入门指南:来看看这位大佬的学习之路吧!
- 学习web前端要了解的HTML5知识有哪些?
- Vue的使用技巧是什么,学习难度怎么样?
- C语言分支语句和循环语句及练习
- M - 简单字符串排序
- java可选项_在Java中链接可选项8
- cocos2d pod_cocos2d 和 cocos3d的版本问题
- 两个分数化简比怎么化_怎么化行最简形矩阵?
- android xml图片旋转,如何在Android中进行平滑的图像旋转?