前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >第三章--第三节(补充):列表排序

第三章--第三节(补充):列表排序

作者头像
喵叔
发布2020-09-08 16:09:29
2480
发布2020-09-08 16:09:29
举报
文章被收录于专栏:喵叔's 专栏喵叔's 专栏
零、排序快速讲解

本节是补充内容,主要讲解列表的排序,列表排序有两种,分别是: list.sort()sorted()。我们来分别看一下。

  1. list.sort() sort()直接修改列表,返回值为None。语法如下:
代码语言:javascript
复制
list.sort([key][,reverse])

其中Key代表用作排序比较的键函数,即自定义排序规则,reverse表示按照升序排序还是降序排序(True为降序,False为升序)。下面通过例子来看一下:

代码语言:javascript
复制
# 定义一个列表
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)
  1. sorted() 当我们需要保留原有列表值时,我们需要使用sorted()函数,sorted()返回一个排序后的列表,语法如下:
代码语言:javascript
复制
sorted(iterable[, key][, reverse])  

iterable是一个可迭代对象,这里的key和reverse同sort(),同样我们通过例子来看一下:

代码语言:javascript
复制
# 定义一个列表
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()函数。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2018-11-19 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 零、排序快速讲解
  • 一、二者的区别
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档