第三章--第三节(补充):列表排序
时间:2022-07-24
本文章向大家介绍第三章--第三节(补充):列表排序,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
零、排序快速讲解
本节是补充内容,主要讲解列表的排序,列表排序有两种,分别是: list.sort() 和 sorted()。我们来分别看一下。
- list.sort() sort()直接修改列表,返回值为None。语法如下:
list.sort([key][,reverse])
其中Key代表用作排序比较的键函数,即自定义排序规则,reverse表示按照升序排序还是降序排序(True为降序,False为升序)。下面通过例子来看一下:
# 定义一个列表
nums=[9,5,2,6,0,4,8]
# 按照升序排列
nums.sort(reverse=False)
# 输出结果为[0, 2, 4, 5, 6, 8, 9]
print(nums)
# 我们定义偶数排前面,奇数排后面
nums.sort(key=lambda x:(x%2!=0,x))
# 输出结果为[0, 2, 4, 6, 8, 5, 9]
print(nums)
- sorted() 当我们需要保留原有列表值时,我们需要使用sorted()函数,sorted()返回一个排序后的列表,语法如下:
sorted(iterable[, key][, reverse])
iterable是一个可迭代对象,这里的key和reverse同sort(),同样我们通过例子来看一下:
# 定义一个列表
nums=[9,5,2,6,0,4,8]
# 按照升序排列
new_nums=sorted(nums,reverse=False)
# 输出结果为[0, 2, 4, 5, 6, 8, 9]
print(new_nums)
# 我们定义偶数排前面,奇数排后面
new_nums=sorted(nums,key=lambda x:(x%2!=0,x))
# 输出结果为[0, 2, 4, 6, 8, 5, 9]
print(new_nums)
一、二者的区别
sort() 是应用在列表上的方法,sorted() 可以对所有可迭代的对象进行排序操作。列表的sort()方法返回的是对已经存在的列表进行操作,而内建函数sorted()方法返回的是一个新的列表,而不是在原来的基础上进行的操作。
注意:sort()不需要复制列表,因此消耗内存少效率高,如果不需要保留原有的列表,则使用sort()方法,反之使用sorted()函数。
- React技巧7(TodoList实现3组件之间传递数据之优化)
- React技巧6(TodoList实现2组件之间传递数据)
- POJ A Knight's Journey
- React技巧5(TodoList实现)
- 求一个数n次方后的末尾数(数论/快速幂)问题描述解题思路代码实现运行结果参考
- Catch That Cow
- React技巧4(如何处理List里面的Item)
- ZOJ 3620 Escape Time II
- React技巧3(如何优雅的渲染一个List)
- FZU 电动车通行证制度
- 贪心算法总结贪心算法基本思路算法实现实例分析参考
- React技巧2(避免无意义的父节点)
- Havel定理
- React技巧1(状态组件与无状态组件的使用)
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- 【5分钟玩转Lighthouse】开车也能跑程序
- LeetCode74|有序矩阵中第K小的元素
- LeetCode73|根据字符出现频率排序
- LeetCode72|前K个高频元素
- LeetCode71|数组中第K个最大元素
- LeetCode70|最小K个数
- LeetCode69|消失的数字
- LeetCode68|和为s的两个数字
- LeetCode78|存在重复元素
- LeetCode77|排序链表
- LeetCode76|两颗二叉搜索树中的所有元素
- LeetCode75|二叉搜索树的第k大节点
- LeetCode86|只出现一次的数字II
- LeetCode85|只出现一次的数字III
- LeetCode84|只出现一次的数字