论坛
潜水/灌水快乐,沉淀知识,认识更多同行。
ToB圈子
加入IT圈,遇到更多同好之人。
朋友圈
看朋友圈动态,了解ToB世界。
ToB门户
了解全球最新的ToB事件
博客
Blog
排行榜
Ranklist
文库
业界最专业的IT文库,上传资料也可以赚钱
下载
分享
Share
导读
Guide
相册
Album
记录
Doing
搜索
本版
文章
帖子
ToB圈子
用户
免费入驻
产品入驻
解决方案入驻
公司入驻
案例入驻
登录
·
注册
只需一步,快速开始
账号登录
立即注册
找回密码
用户名
Email
自动登录
找回密码
密码
登录
立即注册
首页
找靠谱产品
找解决方案
找靠谱公司
找案例
找对的人
专家智库
悬赏任务
圈子
SAAS
IT评测·应用市场-qidao123.com
»
论坛
›
软件与程序人生
›
后端开发
›
Java
›
【python基础】复杂数据类型-列表类型(排序/长度/遍历 ...
【python基础】复杂数据类型-列表类型(排序/长度/遍历) ...
东湖之滨
金牌会员
|
2023-6-3 21:08:04
|
显示全部楼层
|
阅读模式
楼主
主题
975
|
帖子
975
|
积分
2929
1.列表数据元素排序
在创建的列表中,数据元素的排列顺序常常是无法预测的。这虽然在大多数情况下都是不可避免的,但经常需要以特定的顺序呈现信息。有时候希望保留列表数据元素最初的排列顺序,而有时候又需要调整排列顺序。python提供了很多列表数据元素排序的方式,可根据情况选用。
1.永久性排序
python的sort函数能够较为轻松的对列表数据元素进行排序。
其语法格式:列表变量名.sort()
假设你有一个汽车列表,并要让其中的汽车按字母排序。为简化这项任务,我们假设列表中数据元素的所有值都是小写,编写程序如下所示
运行结果如下所示
我们发现cars中数据元素的顺序已经被改变。
我们还可以按与字母顺序相反的顺序排列列表数据元素,为此,只需向sort函数传递参数reverse=True即可,编写程序如下所示
运行结果如下所示
2.临时性排序
要保留列表数据元素原来的排列顺序,同时以特定的顺序呈现他们,可使用sorted函数。sorted函数能够按特定顺序显示列表数据元素,同时不影响它们在列表中的原始排列顺序。
其语法格式:列表变量名.sorted()
编写程序如下所示
运行结果如下所示
我们可以发现,调用sorted函数后,列表数据元素的排列顺序没有变。如果要按与字母顺序相反的顺序显示列表,可向sorted函数传递参数reverse=True,编写程序如下所示
运行结果如下所示
在并非所有值都是小写时,按字母顺序排列列表要复杂些。决定排列顺序时,有多种解读大写字母的方式,要指定准确的排列顺序,可能比我们这里所做的要复杂。然而,大多数排序方式都是基于本节介绍。
3.反转列表数据元素
要反转列表数据元素的排列顺序,可使用reverse函数。
其语法格式:列表变量名.reverse()
假设汽车列表是按购买时间排列的,可轻松地按相反的顺序排列其中的汽车,编写程序如下所示
运行结果如下所示
注意:
①reverse函数不是指按与字母顺序相反的顺序排列列表数据元素,而只是反转列表数据元素的排列顺序。
②reverse函数永久性地修改列表数据元素的排列顺序,但可随时恢复到原来的排列顺序,为此只需再次调用reverse函数即可。
2.获取列表长度
使用len函数可快速获悉列表的长度。
其语法给是:列表变量名.len()
编写程序如下所示
运行结果如下所示
python计算列表元素个数时是从索引1开始的,因此确定列表长度时,不会存在差一错误,有几个数据元素,列表的长度就是几。
3.遍历列表
经常需要遍历列表的所有数据元素,对每个数据元素执行相同的操作。需要对列表中的每个数据元素都执行相同的操作时,可使用python中的for循环。
其语法格式:
假设我们有一份学员名单,需要将其中每个学员的名字都打印出来。为此,我们可以分别获取名单中的每个名字,但这种做法会导致多个问题。
问题1:如果名单很长,将会包含大量重复代码
问题2:每当名单的长度发生变化时,都必须修改代码。
在实际编程中我们通过使用for循环语句,可让python去处理这些问题。编写程序如下所示:
for循环语句的知识点我们放在后面着重介绍,现在我们只要知道可以通过for循环,通过"照葫芦画瓢"能够实现对列表的遍历即可。
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
本帖子中包含更多资源
您需要
登录
才可以下载或查看,没有账号?
立即注册
x
回复
使用道具
举报
0 个回复
倒序浏览
返回列表
快速回复
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
or
立即注册
本版积分规则
发表回复
回帖并转播
回帖后跳转到最后一页
发新帖
回复
东湖之滨
金牌会员
这个人很懒什么都没写!
楼主热帖
《HarmonyOS开发 - 小凌派-RK2206开发 ...
当我们在聊「开源大数据调度系统Taier ...
VMware虚拟机安装黑群晖7.1
从0到1实现一套CICD流程之CD
ABP Framework 7.0 RC 新增功能简介 ...
dotnet 6 为什么网络请求不跟随系统网 ...
大二C#实现酒店管理系统(C端展示、前 ...
MySQL视图
2023年2月苹果最新屏蔽系统更新描述文 ...
MySQL8.0 优化器介绍(二)
标签云
存储
服务器
快速回复
返回顶部
返回列表