当前位置:
首页 > 编程开发 > Python基础教程 >
-
python基础教程之Python 列表数据类型(list)[学习 Python 必备基础知识][看此一篇就够了](3)
本站最新发布 Python从入门到精通|Python基础教程
试听地址 https://www.xin3721.com/eschool/pythonxin3721/
方法。
6.2 使用
试听地址 https://www.xin3721.com/eschool/pythonxin3721/
方法。
使用格式如下所示:
listname.sort(*, key=None, reverse=False)
对以上格式说明,
-
sort()
:sort()
方法会对列表进行原地排序,即修改原列表。 -
sort()
方法接受两个仅限以关键字形式传入的参数。 -
key
:指定带有一个参数的函数,用于从每个列表元素中提取比较键 (例如 key=str.lower)。 对应于列表中每一项的键会被计算一次,然后在整个排序过程中使用。 默认值None
表示直接对列表项排序而不计算一个单独的键值。 -
reverse
:reverse
为一个布尔值。默认为False
,表示升序排序。 如果设为True
,则每个列表元素将按反向顺序(降序)比较进行排序。
举例如下所示:
例一,
list_demo = [4, 1, 3, 2, 8, 5]
print('排序前 list_demo =', list_demo)
list_demo.sort() # 对列表进行升序排序操作
# list_demo.sort(reverse=False) # 升序排序操作也可以这么写
print('升序排序后 list_demo =', list_demo)
list_demo.sort(reverse=True) # 降序排序
print('降序排序后 list_demo =', list_demo)
运行结果:
排序前 list_demo = [4, 1, 3, 2, 8, 5]
升序排序后 list_demo = [1, 2, 3, 4, 5, 8]
降序排序后 list_demo = [8, 5, 4, 3, 2, 1]
例二,
# 为 key 参数准备调度函数
def take_second(element):
return element[1]
list_demo = [(1, 3), (3, 5), (2, 4), (5, 1)]
print('排序前 list_demo =', list_demo)
list_demo.sort() # 升序排序。元组作为列表的元素,排序是以元组的第一个元素进行比较。
print('元组作为列表的元素,排序是以元组的第一个元素进行比较 list_demo =', list_demo)
list_demo.sort(key=take_second) # 升序排序。元组作为列表的元素,排序是以元组的第二个元素进行比较。
print('元组作为列表的元素,排序是以元组的第一个元素进行比较 list_demo =', list_demo)
运行结果:
排序前 list_demo = [(1, 3), (3, 5), (2, 4), (5, 1)]
元组作为列表的元素,排序是以元组的第一个元素进行比较 list_demo = [(1, 3), (2, 4), (3, 5), (5, 1)]
元组作为列表的元素,排序是以元组的第一个元素进行比较 list_demo = [(5, 1), (1, 3), (2, 4), (3, 5)]
6.2 使用 sorted()
内置函数排序
从一个可迭代对象构建一个新的排序列表,要使用sorted()
内置函数。
使用格式如下所示:
sorted(iterable, * ,key=None, reverse=False)
对以上格式说明,
-
返回值:
sorted()
内置函数会根据iterable
中的项返回一个新的已排序列表。 - 具有两个可选参数,它们都必须指定为关键字参数。
-
key
: 指定带有单个参数的函数,用于从iterable
的每个元素中提取用于比较的键 (例如key=str.lower
)。 默认值为None
(直接比较元素)。 -
reverse
:为一个布尔值。默认为False
,表示升序排序。 如果设为True
,则每个列表元素将按反向顺序(降序)比较进行排序。
举例如下所示:
# 为 key 参数准备调度函数
def take_second(element):
return element[1]
list_demo = [(1, 3), (3, 5), (2, 4), (5, 1)]
print('排序前 list_demo =', list_demo)
new_list1 = sorted(list_demo, key=None) # 升序排序。元组作为列表的元素,排序是以元组的第一个元素进行比较。
print('元组作为列表的元素,排序是以元组的第一个元素进行比较 list_demo =', new_list1)
new_list2 = sorted(list_demo, key=take_second) # 升序排序。元组作为列表的元素,排序是以元组的第二个元素进行比较。
print('元组作为列表的元素,排序是以元组的第一个元素进行比较 list_demo =', new_list2)
运行结果:
排序前 list_demo = [(1, 3), (3, 5), (2, 4), (5, 1)]
元组作为列表的元素,排序是以元组的第一个元素进行比较 list_demo = [(1, 3), (2, 4), (3, 5), (5, 1)]
元组作为列表的元素,排序是以元组的第一个元素进行比较 list_demo = [(5, 1), (1, 3), (2, 4), (3, 5)]
栏目列表
最新更新
如何使用OS模块中的stat方法
Python os 模块
seek() 方法
python打开文件实例1
Python写入文件
什么是流?
文件操作如何进制逐行读取
Python相对路径
with创建临时运行环境
Python文件操作
.Net Standard(.Net Core)实现获取配置信息
Linux PXE + Kickstart 自动装机
Shell 编程 基础
Shell 编程 条件语句
CentOS8-网卡配置及详解
Linux中LVM逻辑卷管理
1.数码相框-相框框架分析(1)
Ubuntu armhf 版本国内源
Linux中raid磁盘阵列
搭建简易网站
access教程之Access简介
mysql 安装了最新版本8.x版本后的报错:
Mysql空间数据&空间索引(spatial)
如何远程连接SQL Server数据库的图文教程
复制SqlServer数据库的方法
搜索sql语句
sql中返回参数的值
sql中生成查询的模糊匹配字符串
数据定义功能
数据操作功能