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 相关文章推荐
python3.3教程之模拟百度登陆代码分享
Jan 16 Python
python实现基于两张图片生成圆角图标效果的方法
Mar 26 Python
利用Python实现命令行版的火车票查看器
Aug 05 Python
python的paramiko模块实现远程控制和传输示例
Oct 13 Python
TensorFlow入门使用 tf.train.Saver()保存模型
Apr 24 Python
Python Flask框架模板操作实例分析
May 03 Python
python爬虫实例之获取动漫截图
May 31 Python
宝塔面板成功部署Django项目流程(图文)
Jun 22 Python
基于Python制作一副扑克牌过程详解
Oct 19 Python
Selenium关闭INFO:CONSOLE提示的解决
Dec 07 Python
pytorch __init__、forward与__call__的用法小结
Feb 27 Python
为了顺利买到演唱会的票用Python制作了自动抢票的脚本
Oct 16 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 Ajax乱码
2008/04/09 PHP
解析php安全性问题中的:Null 字符问题
2013/06/21 PHP
php+xml实现在线英文词典查询的方法
2015/01/23 PHP
制作个性化的WordPress登陆界面的实例教程
2016/05/21 PHP
php单元测试phpunit入门实例教程
2017/11/17 PHP
PHP PDOStatement::bindValue讲解
2019/01/30 PHP
在Laravel 中实现是否关注的示例
2019/10/22 PHP
学习YUI.Ext 第三天
2007/03/10 Javascript
jQuery 常见学习网站与参考书
2009/11/09 Javascript
解决js正则匹配换行问题实现代码
2012/12/10 Javascript
nodejs中exports与module.exports的区别详细介绍
2013/01/14 NodeJs
js判断背景图片是否加载成功使用img的width实现
2013/05/29 Javascript
jQuery实现切换字体大小的方法
2015/03/10 Javascript
javascript实现获取服务器时间
2015/05/19 Javascript
JavaScript实现算术平方根算法-代码超简单
2015/09/11 Javascript
Bootstrap3 Grid system原理及应用详解
2016/09/30 Javascript
创建简单的node服务器实例(分享)
2017/06/23 Javascript
关于在LayUI中使用AJAX提交巨坑记录
2019/10/25 Javascript
解决vue 表格table列求和的问题
2019/11/06 Javascript
基于Vue CSR的微前端实现方案实践
2020/05/27 Javascript
python启动办公软件进程(word、excel、ppt、以及wps的et、wps、wpp)
2009/04/09 Python
python操作列表的函数使用代码详解
2017/12/28 Python
利用Python+Java调用Shell脚本时的死锁陷阱详解
2018/01/24 Python
python向已存在的excel中新增表,不覆盖原数据的实例
2018/05/02 Python
Django使用详解:ORM 的反向查找(related_name)
2018/05/30 Python
详解Python下Flask-ApScheduler快速指南
2018/11/04 Python
解决Django连接db遇到的问题
2019/08/29 Python
利用python中的matplotlib打印混淆矩阵实例
2020/06/16 Python
HTML5逐步分析实现拖放功能的方法
2020/09/30 HTML / CSS
Links of London官方网站:英国标志性的珠宝品牌
2017/04/09 全球购物
党校自我鉴定范文
2013/10/02 职场文书
自我评价范文分享
2014/01/04 职场文书
管理信息系学生的自我评价
2014/01/11 职场文书
社区工作者先进事迹
2014/01/18 职场文书
迟到检讨书300字
2014/02/14 职场文书
法定代表人身份证明书
2014/09/10 职场文书