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编程时利用wxPython来支持多线程的方法
Apr 07 Python
深入解析Python中的线程同步方法
Jun 14 Python
Python读取Json字典写入Excel表格的方法
Jan 03 Python
搞定这套Python爬虫面试题(面试会so easy)
Apr 03 Python
python打包exe开机自动启动的实例(windows)
Jun 28 Python
Python代码太长换行的实现
Jul 05 Python
使用Python制作一个打字训练小工具
Oct 01 Python
使用NumPy读取MNIST数据的实现代码示例
Nov 20 Python
Python文件时间操作步骤代码详解
Apr 13 Python
Django中Aggregation聚合的基本使用方法
Jul 09 Python
Python爬取梨视频的示例
Jan 29 Python
Python捕获、播放和保存摄像头视频并提高视频清晰度和对比度
Apr 14 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日历程序
2006/12/06 PHP
PHP扩展编写点滴 技巧收集
2010/03/09 PHP
Codeigniter实现智能裁剪图片的方法
2014/06/12 PHP
Yii2-GridView 中让关联字段带搜索和排序功能示例
2017/01/21 PHP
PHP实现驼峰样式字符串(首字母大写)转换成下划线样式字符串的方法示例
2017/08/10 PHP
PHP简单实现欧拉函数Euler功能示例
2017/11/06 PHP
php微信公众号开发之微信企业付款给个人
2018/10/04 PHP
TP5框架model常见操作示例小结【增删改查、聚合、时间戳、软删除等】
2020/04/05 PHP
javascript下利用arguments实现string.format函数
2010/08/24 Javascript
Js组件的一些写法
2010/09/10 Javascript
js实现的切换面板实例代码
2013/06/17 Javascript
JS正则验证邮箱的格式详细介绍
2013/11/19 Javascript
jqplot通过ajax动态画折线图的方法及思路
2013/12/08 Javascript
编写高效jQuery代码的4个原则和5个技巧
2014/04/24 Javascript
jquery 实现input输入什么div图层显示什么
2014/06/15 Javascript
详解JavaScript正则表达式之RegExp对象
2015/12/13 Javascript
初步使用Node连接Mysql数据库
2016/03/03 Javascript
JavaScript中循环遍历Array与Map的方法小结
2016/03/12 Javascript
老生常谈 关于JavaScript的类的继承
2016/06/24 Javascript
jQuery操作DOM_动力节点Java学院整理
2017/07/04 jQuery
openlayers4.6.5实现距离量测和面积量测
2020/09/25 Javascript
Python实现字符串匹配算法代码示例
2017/12/05 Python
Pytorch入门之mnist分类实例
2018/04/14 Python
opencv 图像滤波(均值,方框,高斯,中值)
2020/07/08 Python
在终端启动Python时报错的解决方案
2020/11/20 Python
Ray-Ban雷朋美国官网:全球领先的太阳眼镜品牌
2016/07/20 全球购物
波比布朗英国官网:Bobbi Brown英国
2017/11/13 全球购物
俄罗斯游戏商店:Buka
2020/03/01 全球购物
2014国庆节幼儿园亲子活动方案
2014/09/16 职场文书
考试作弊检讨
2015/01/27 职场文书
劳动仲裁撤诉申请书
2015/05/18 职场文书
谢师宴家长致辞
2015/07/27 职场文书
Python学习开发之图形用户界面详解
2021/08/23 Python
Spring Data JPA框架持久化存储数据到数据库
2022/04/28 Java/Android
Nginx开源可视化配置工具NginxConfig使用教程
2022/06/21 Servers
CSS子盒子水平和垂直居中的五种方法
2022/07/23 HTML / CSS