五、Python第五课——Python中组织列表的相关函数

目录

一、用sort()函数对列表进行永久排序

二、用sorted()函数对列表进行临时排序 

三、用reverse()函数对列表进行列表原始排序的逆序输出

四、使用len()函数确定列表长度


       创建列表后,内部的元素逐渐增多,其排列顺序也是无法预测的,因为用户并非总能控制用户提供数据的顺序。由此,我们经常需要以特定的顺序呈现信息。

一、用sort()函数对列表进行永久排序

sort()函数可以帮助我们较为方便的对列表进行排序,有如下特点:

sort函数的原型为:sort(self,key,reverse=False),可以看出有三个参数!(这里的reverse=False是默认的,所以直接为最后一个参数赋值了

self:参数self是表明该sort函数是使用何种算法进行排序的,一般是归并排序。目前,我们还无需重写此参数,所以在使用时可以忽略此函数

key:参数key用来指定一个函数,此函数代表排序的规则(也就是你按照什么规则对你的序列进行排序),在每次排序时调用;

reverse:参数reverse是用来表明是否逆序,默认是等于False,按照升序的规则进行排序的。当reverse=True时,便会按照降序进行排序。我们一般经常修改此参数。

代码说明:

cars=["BMW","Audi","Toyota","Subaru","BYD"]
print(cars)#打印列表
cars.sort()#按字母顺序排序
print(cars)#打印排序后的列表
cars.sort(reverse=True)#按字母顺序的逆序排序
print(cars)#打印排序后的列表

 注:在排序时,如果列表中元素开头字母,大小写不一致,那么调用此函数后的排序效果可能不是大家所想的那样!

有如下实验:假如元素开头字母相同,则何如?

cars=["BBM","BDC","BDA","BYD"]
print(cars)#打印列表
cars.sort()#按字母顺序排序
print(cars)#打印排序后的列表

 由上述实验可以看出,在字母大小写一致的情况下,以字典序为例:sort()函数会先比较各个元素的首字母,如果发现元素的首字母相同,则会比较第二个字母,其他同理。总之排序之后的结果一定是:元素首字母不同,则是字典序;首字母相同的,第二个字母是字典序!

二、用sorted()函数对列表进行临时排序 

可以使用sorted()函数对列表进行临时排序,不影响他们在列表中的原始排序 

 代码说明:

cars=["BMW","Audi","Toyota","Subaru"]
print("这是原始序列:")
print(cars)#打印原始列表
print("这是按字典序排序后的临时序列:")
print(sorted(cars))#打印排序后的列表
print("再次输出原始序列:(证明是不改变原始序列的排序)")
print(cars)#再次输出原始序列说明没有变化

 

当然也可以向sorted()函数传递按字典序逆序排序,上述代码修改成如下代码即可:

print(sorted(cars,reverse=True))#打印排序后的列表

三、用reverse()函数对列表进行列表原始排序的逆序输出

 正如函数名“reverse”,这个函数的功能就是将列表中的元素“翻转”。例如:list=["A","B","C"],使用rverse()函数后,列表变为list=["C","B","A"]。这种“翻转”是永久的,如果想要恢复到原来的顺序,再次使用以下本函数就OK了!有如下代码:

cars=["BMW","Audi","Toyota","Subaru"]
print("这是原始序列:")
print(cars)#打印原始列表
cars.reverse()
print("这是”翻转“后的序列:")
print(cars)

四、使用len()函数确定列表长度

想要尽快知道列表的长度(列表中元素的数量),就需要使用len()函数!

代码举例:

cars=["BMW","Audi","Toyota","Subaru"]
print("cars列表的长度为:",len(cars))

 这里的计数是从1开始的,所以不会出现“列表元素的数量”差“1”的现象

 本节课的内容较少,但是需要慢慢消化。

 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/531083.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

如何正确下载、安装Codeblocks?

目录 一、Codeblocks的下载 二、Codeblocks的安装 三、Codeblocks的运行 相信很多同学在初学C语言时都会选择一个短小精悍的代码编辑器,如CodeBlocks(不说别的了,直接切入正题)。 在2020年(今年)3月份-…

Python:创建列表,其中包含数字1-1000000,为什么Pycharm控制台结果显示不完整?

目录 一、问题描述(寻找解决方法的同学直接看“标题二”) 二、解决办法 一、问题描述(寻找解决方法的同学直接看“标题二”) 在学习Python过程中遇到一个这样的问题,也算是一个小BUG吧。题目大意是这样的&#xff…

六、Python第六课——Python中的for循环及数字列表

目录 一、Python中的for循环 1、for循环语句的声明。 2、for循环缩进常见问题 二、数字列表 1、函数range() 2、使用range()函数创建数字列表 3、使用一系列函数处理数字列表(统计) 4、列表解析(生成列表的简洁方法) 一…

七、Python第七课——有关列表的二三事(切片、切片的遍历和复制)

目录 一、切片 二、遍历切片 三、列表的复制 一、切片 此前,我们学习了如何访问单个列表以及如何处理列表中的所有元素,那么我们如何处理列表中的部分元素呢?这就引出一个概念“切片” 。我们可以把列表看成是面包,“切片”…

八、Python第八课——元组与列表、代码格式

(请先看置顶博文)https://blog.csdn.net/GenuineMonster/article/details/104495419 目录 一、元组的定义 二、元组的遍历 三、代码格式 一、元组的定义 1、元组:不可变的列表称为元组。这个是相对于普通列表而言的,普通列表…

九、Python第九课——Python中的if语句与运用

(请先看置顶博文)https://blog.csdn.net/GenuineMonster/article/details/104495419 目录 一、if语句 1、检查变量存储的值是否相等 2、判定字母或字符串时区别大小写 3、检查多个条件 4、检查特定值是否在列表中 二、if-else语句和if-elif-el…

十、Python第十课——字典的些许知识(重点)

(请先看置顶博文)https://blog.csdn.net/GenuineMonster/article/details/104495419 目录 (请先看置顶博文)https://blog.csdn.net/GenuineMonster/article/details/104495419 初识字典 1、创建字典 2、字典的“增删改查” …

百度地图API如何申请?(自认为比较详细,如解决了你的问题请收藏、点赞、关注)

(请先看置顶博文)本博打开方式,请详读_liO_Oil的博客-CSDN博客_怎么把androidstudio卸载干净 注意:自己申请的AK要保存好,最好不要外借,避免不必要的麻烦!(写在前面) 目…

PythonPyqt5项目开发完成后如何使用pyinstaller打包——以Pycharm编辑器为例(目前为止最正确的版本,成功打包日期为2020.11.26)

(请先看置顶博文)本博打开方式,请详读_liO_Oil的博客-CSDN博客_怎么把androidstudio卸载干净 最近用Python开发了一个可视化界面,开发过程如鱼得水,几乎没有BUG出现(项目简单)。但是在临近交付时…

十一、Python第十一课——用户输入和另一种循环(While)

(请先看置顶博文)https://blog.csdn.net/GenuineMonster/article/details/104495419 学了这么久的Python,大家肯定会好奇,不是说机器学习吗?不是人机交互吗?不是人工智能吗?怎么我学了Python都十…

如何让新创建的Python文件自动生成作者信息等内容(以Pycharm为例)

(请先看置顶博文)https://blog.csdn.net/GenuineMonster/article/details/104495419 打开Pycharm软件后,点击“File”,然后点击“Settings”,就会出现下面截图界面:然后按照箭头所指,在对应位置…

如何将谷歌浏览器的背景色(包括显示的网站界面等)全部调为黑色?2020.12.28

(请先看置顶博文)https://blog.csdn.net/GenuineMonster/article/details/104495419 因为电脑显示器正对窗户的原因,平时为了透气通风不能使用遮光帘,所以我将整个电脑的所有软件的主题色设为黑色,这样能降低一些光的…

Windows 10如何消除文件夹右上角的“相对箭头”?

(请先看置顶博文)本博打开方式!!!请详读!!!请详读!!!请详读!!!_Cat-CSDN博客 整理笔记本电脑时发现&#xff0…

目标检测第1步:如何在Windows 10下安装MiniConda?

(请先看置顶博文)本博打开方式!!!请详读!!!请详读!!!请详读!!!_Cat-CSDN博客 目录 一、Conda是什么&#xff…

十二、Python第十二课——函数

(请先看置顶博文)https://blog.csdn.net/GenuineMonster/article/details/104495419 目录 (请先看置顶博文)https://blog.csdn.net/GenuineMonster/article/details/104495419 目录 目录 (请先看置顶博文&#xff…

目标检测第2步:如何在Windows 10下安装Anaconda?

(请先看置顶博文)本博打开方式!!!请详读!!!请详读!!!请详读!!!_Cat-CSDN博客 想要学习目标检测的朋友可能会发…

目标检测第3步:如何在Windows 10系统下安装CUDA(更新时间2022.03.22)

(请先看置顶博文)本博打开方式!!!请详读!!!请详读!!!请详读!!!_Cat-CSDN博客 目录 一、自检 1、查看PC是否…

目标检测第5步:如何在Windows 10系统下,搭建YOLOv5(5.0)环境?保姆级,没有人比这个更详细了(更新时间2022.3.22)

(请先看置顶博文)本博打开方式!!!请详读!!!请详读!!!请详读!!!_Cat-CSDN博客 目录 一、安装Anaconda或Minic…

如何将Word与Endnote再次相互关联?

(请先看置顶博文)本博打开方式!!!请详读!!!请详读!!!请详读!!!_Cat-CSDN博客 Endnote是每一个科研人员都接触…

十三、Python第十三课——类(包含对类的相关概念的理解,这一文的附录让你彻底明白类和对象)

(请先看置顶博文)https://blog.csdn.net/GenuineMonster/article/details/104495419 目录 (请先看置顶博文)https://blog.csdn.net/GenuineMonster/article/details/104495419 一、类和对象 1、类 2、对象 二、类的创建和实例…