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让图片按照exif信息里的创建时间进行排序的方法
Mar 16 Python
Python爬虫爬取美剧网站的实现代码
Sep 03 Python
python 将字符串转换成字典dict的各种方式总结
Mar 23 Python
详解Python进阶之切片的误区与高级用法
Dec 24 Python
python学习开发mock接口
Apr 28 Python
在python中实现调用可执行文件.exe的3种方法
Jul 07 Python
django中瀑布流写法实例代码
Oct 14 Python
python logging.basicConfig不生效的原因及解决
Feb 20 Python
Python PyQt5模块实现窗口GUI界面代码实例
May 12 Python
Python基于os.environ从windows获取环境变量
Jun 09 Python
用Python 执行cmd命令
Dec 18 Python
图文详解matlab原始处理图像几何变换
Jul 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
SONY SRF-22W(33W)的电路分析和维修案例
2021/03/02 无线电
php抓取网站图片并保存的实现方法
2015/10/29 PHP
php结合md5的加密解密算法实例
2016/09/30 PHP
PHP开发实现快递查询功能详解
2019/04/08 PHP
该如何加载google-analytics(或其他第三方)的JS
2010/05/13 Javascript
JS的get和set使用示例
2014/02/20 Javascript
js仿苹果iwatch外观的计时器代码分享
2015/08/26 Javascript
在vue项目创建的后初始化首次使用stylus安装方法分享
2018/01/25 Javascript
JavaScript设计模式之构造器模式(生成器模式)定义与用法实例分析
2018/07/26 Javascript
关于微信小程序bug记录与解决方法
2018/08/15 Javascript
详解js静态检查工具eslint配置文件
2018/11/23 Javascript
vue项目,代码提交至码云,iconfont的用法说明
2020/07/30 Javascript
python3+dlib实现人脸识别和情绪分析
2018/04/21 Python
Python实现的简单排列组合算法示例
2018/07/04 Python
tensorflow 恢复指定层与不同层指定不同学习率的方法
2018/07/26 Python
基于python中theano库的线性回归
2018/08/31 Python
详解python使用pip安装第三方库(工具包)速度慢、超时、失败的解决方案
2018/12/02 Python
Python Pywavelet 小波阈值实例
2019/01/09 Python
django框架模型层功能、组成与用法分析
2019/07/30 Python
opencv python在视屏上截图功能的实现
2020/03/05 Python
Django操作session 的方法
2020/03/09 Python
英国钻石公司:British Diamond Company
2020/02/16 全球购物
令人啧啧称赞的经理推荐信
2013/11/07 职场文书
材料物理专业个人求职信
2013/12/15 职场文书
村党支部换届选举方案
2014/05/02 职场文书
物业保安岗位职责
2014/07/02 职场文书
四风问题民主生活会对照检查材料思想汇报
2014/09/27 职场文书
学校领导班子成员查摆问题及整改措施
2014/10/28 职场文书
大学生英文求职信范文
2015/03/19 职场文书
讲文明倡议书
2015/04/29 职场文书
新郎接新娘保证书
2015/05/08 职场文书
2015年客房服务员工作总结
2015/05/15 职场文书
卡特教练观后感
2015/06/08 职场文书
解决python3安装pandas出错的问题
2021/05/20 Python
SQL实现LeetCode(177.第N高薪水)
2021/08/04 MySQL
Windows Server 2008 修改远程登录端口以及配置防火墙
2022/04/28 Servers