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实现baidu hi自动登录的代码
Feb 10 Python
重命名批处理python脚本
Apr 05 Python
Python中除法使用的注意事项
Aug 21 Python
python清除字符串里非数字字符的方法
Jul 02 Python
python从入门到精通(DAY 3)
Dec 20 Python
python中numpy包使用教程之数组和相关操作详解
Jul 30 Python
python实现机器学习之多元线性回归
Sep 06 Python
Django实现微信小程序的登录验证功能并维护登录态
Jul 04 Python
python实现LBP方法提取图像纹理特征实现分类的步骤
Jul 11 Python
使用 Python 快速实现 HTTP 和 FTP 服务器的方法
Jul 22 Python
Python opencv相机标定实现原理及步骤详解
Apr 09 Python
python中return不返回值的问题解析
Jul 22 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
phpmailer发送gmail邮件实例详解
2013/06/24 PHP
php简单实现MVC
2015/02/05 PHP
php使用PDO下exec()函数查询执行后受影响行数的方法
2017/03/28 PHP
Laravel5.5新特性之友好报错以及展示详解
2017/08/13 PHP
学习ExtJS table布局
2009/10/08 Javascript
iphone safari不支持position fixed的解决方法
2012/05/04 Javascript
jQuery之折叠面板的深入解析
2013/06/19 Javascript
javascript 事件处理示例分享
2014/12/31 Javascript
javascript实现通过表格绘制颜色填充矩形的方法
2015/04/21 Javascript
javascript判断并获取注册表中可信任站点的方法
2015/06/01 Javascript
微信小程序动态添加分享数据
2017/06/14 Javascript
Django+vue跨域问题解决的详细步骤
2019/01/20 Javascript
vue中v-text / v-html使用实例代码详解
2019/04/02 Javascript
selenium+java中用js来完成日期的修改
2019/10/31 Javascript
详解vue实现坐标拾取器功能示例
2020/11/18 Vue.js
[58:42]DOTA2上海特级锦标赛C组败者赛 Newbee VS Archon第一局
2016/02/27 DOTA
Python版的文曲星猜数字游戏代码
2013/09/02 Python
Python 爬虫之Beautiful Soup模块使用指南
2018/07/05 Python
Python去除字符串前后空格的几种方法
2019/03/04 Python
python中如何实现将数据分成训练集与测试集的方法
2019/09/13 Python
Python字典底层实现原理详解
2019/12/18 Python
使用Tensorboard工具查看Loss损失率
2020/02/15 Python
python_matplotlib改变横坐标和纵坐标上的刻度(ticks)方式
2020/05/16 Python
利用CSS3伪元素实现逐渐发光的方格边框
2017/05/07 HTML / CSS
美国百年历史早餐食品供应商:Wolferman’s
2017/01/18 全球购物
柒牌官方商城:中国男装优秀品牌
2017/06/30 全球购物
Ruby中的保护方法和私有方法与一般面向对象程序设计语言的一样吗
2013/05/01 面试题
化工机械应届生求职信
2013/11/04 职场文书
小学生家长评语大全
2014/02/10 职场文书
干部个人对照检查材料
2014/08/25 职场文书
九一八事变演讲稿范文
2014/09/14 职场文书
介绍信怎么写
2015/01/30 职场文书
佛光寺导游词
2015/02/10 职场文书
诚实守信主题班会
2015/08/13 职场文书
新课程改革心得体会
2016/01/22 职场文书
CKAD认证中部署k8s并配置Calico插件
2022/03/31 Servers