Python中的 sort 和 sorted的用法与区别


Posted in Python onAugust 10, 2019

今天在做一道题时,因为忘了Python中sort和sorted的用法与区别导致程序一直报错,找了好久才知道是使用方法错误的问题!现在就大致的归纳一下sort和sorted的用法与区别

1. sort:

sort是Python中列表的方法

sort() 方法语法:

list.sort(key=None, reverse=False)

有两个参数,这里不讲第一个参数,第二个参数当 reverse=True时为降序排列,reverse=False为升序排列,默认reverse=False

重要: 该方法没有返回值,也就是返回值为 None,而我也正是在这里犯错了

代码案例:

"""test"""
a = [4, 5, 6, 3, 2, 320, 5, 1] # 创建一个列表
print(a) # 打印列表,输出为:[4, 5, 6, 3, 2, 320, 5, 1]

print(a.sort()) # 输出为:None
print(a) # 输出为:[1, 2, 3, 4, 5, 5, 6, 320]

a = a.sort()
print(a) # 输出为:None

错用 a = a.sort(),以为可以把列表 a 按升序排列,其实只会把 a 变为 None,并不是真正想要的结果;正确做法是只要调用了 a.sort(),原列表 a 就变为一个升序的列表了,就可以直接使用 a 了;

2. sorted:

sorted() 函数是Python中的内置函数

语法: sorted(iterable=None, key=None, reverse=False)

共有三个参数,后两个参数和 list.sort() 方法中的参数意思没有差别,第一个参数是一个可迭代对象

返回值:返回重新排列的列表

注意:和 list.sort() 方法不一样的是,该函数不该变原来的可迭代对象,如 a 为一个列表,sorted(a) ,并不会改变 a,只会返回一个排序后的新列表

代码案例:

"""test"""
a = [4, 5, 6, 3, 2, 320, 5, 1] # 创建一个列表

print(a) # 输出:[4, 5, 6, 3, 2, 320, 5, 1]

sorted(a)
print(a)# 输出:[4, 5, 6, 3, 2, 320, 5, 1],因为sorted() 函数不会改变原先的列表

print(sorted(a))
# 输出:[1, 2, 3, 4, 5, 5, 6, 320],因为 sorted() 函数返回一个排序好的列表

a = sorted(a)
print(a)
# 现在用 sorted 函数就可以这样使用而不会出现错误了,输出:[1, 2, 3, 4, 5, 5, 6, 320]

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python sqlobject(mysql)中文乱码解决方法
Nov 14 Python
python发送邮件示例(支持中文邮件标题)
Feb 16 Python
在Python中使用列表生成式的教程
Apr 27 Python
Python中super的用法实例
May 28 Python
Centos7 Python3下安装scrapy的详细步骤
Mar 15 Python
python和shell获取文本内容的方法
Jun 05 Python
使用PyQt4 设置TextEdit背景的方法
Jun 14 Python
python绘制随机网络图形示例
Nov 21 Python
Django基于客户端下载文件实现方法
Apr 21 Python
利用pandas向一个csv文件追加写入数据的实现示例
Apr 23 Python
pytorch VGG11识别cifar10数据集(训练+预测单张输入图片操作)
Jun 24 Python
Python 连接 MySQL 的几种方法
Sep 09 Python
Python测试模块doctest使用解析
Aug 10 #Python
Django发送邮件和itsdangerous模块的配合使用解析
Aug 10 #Python
python requests库爬取豆瓣电视剧数据并保存到本地详解
Aug 10 #Python
python实现邮件发送功能
Aug 10 #Python
Python字典推导式将cookie字符串转化为字典解析
Aug 10 #Python
python selenium登录豆瓣网过程解析
Aug 10 #Python
python matplotlib库绘制散点图例题解析
Aug 10 #Python
You might like
php 函数中使用static的说明
2012/06/01 PHP
php导出word格式数据的代码实例
2013/11/25 PHP
深入理解PHP中的count函数
2016/05/31 PHP
理解Javascript_15_作用域分配与变量访问规则,再送个闭包
2010/10/20 Javascript
formvalidator验证插件中有关ajax验证问题
2013/01/04 Javascript
js点击事件链接的问题解决
2014/04/25 Javascript
详解JavaScript对W3C DOM模版的支持情况
2015/06/16 Javascript
Bootstarp基本模版学习教程
2017/02/01 Javascript
基于JavaScript实现的折半查找算法示例
2017/04/14 Javascript
详解vue组件通信的三种方式
2017/06/30 Javascript
vue页面使用阿里oss上传功能的实例(一)
2017/08/09 Javascript
vue中使用element-ui进行表单验证的实例代码
2018/06/22 Javascript
vue实现移动端图片上传功能
2019/12/23 Javascript
JavaScript中的类型检查
2020/02/03 Javascript
Layui弹框中数据表格中可双击选择一条数据的实现
2020/05/06 Javascript
VUE使用axios调用后台API接口的方法
2020/08/03 Javascript
[04:26]2014DOTA2西雅图国际邀请赛 总决赛TOPPLAY
2014/07/22 DOTA
python自动化测试之连接几组测试包实例
2014/09/28 Python
Python实现获取照片拍摄日期并重命名的方法
2017/09/30 Python
解决DataFrame排序sort的问题
2018/06/07 Python
django.db.utils.ProgrammingError: (1146, u“Table‘’ doesn’t exist”)问题的解决
2018/07/13 Python
python中文编码与json中文输出问题详解
2018/08/24 Python
Python清空文件并替换内容的实例
2018/10/22 Python
python 制作自定义包并安装到系统目录的方法
2018/10/27 Python
Python中的heapq模块源码详析
2019/01/08 Python
Python类中self参数用法详解
2020/02/13 Python
python3 googletrans超时报错问题及翻译工具优化方案 附源码
2020/12/23 Python
详解Pymongo常用查询方法总结
2021/01/29 Python
英国最大的宠物食品和宠物用品网上零售商: Zooplus
2016/08/01 全球购物
酒吧员工的岗位职责
2013/11/26 职场文书
三年级数学教学反思
2014/01/31 职场文书
《望洞庭》教学反思
2014/02/16 职场文书
《秋姑娘的信》教学反思
2014/02/28 职场文书
幼儿园家长评语大全
2014/04/16 职场文书
会计手工模拟做账心得体会
2016/01/22 职场文书
教师师德承诺书2016
2016/03/25 职场文书