第3章 列表简介

第3章 列表简介

  • 3.1 列表是什么
    • 3.1.1 访问列表元素
    • 3.1.2 索引从 0 而不是 1 开始
    • 3.1.3 使用列表中的各个值
  • 3.2 修改、添加和删除元素
    • 3.2.1 修改列表元素
    • 3.2.2 在列表中添加元素
    • 3.2.3 从列表中删除元素
  • 3.3 组织列表
    • 3.3.1 使用方法 sort()对列表永久排序
    • 3.3.2 使用函数 sorted()对列表临时排序
    • 3.3.3 倒着打印列表
    • 3.3.4 确定列表的长度
  • 3.4 使用列表时避免索引错误

3.1 列表是什么

3.1.1 访问列表元素

列表是有序集合,因此要访问列表的任意元素,只需将该元素的位置(索引)告诉 Python
即可。

letters = ['A', 'B', 'C']
print(letters)  # 输出列表 ['A', 'B', 'C']

3.1.2 索引从 0 而不是 1 开始

在 Python 中,第一个列表元素的索引为 0,而不是 1。

print(letters[0])   # 下标从0开始,输出 A
print(letters[1])   # 下标从0开始,输出 B
print(letters[-1])   # -1表示倒数第一个,输出 C

3.1.3 使用列表中的各个值

可以像使用其他变量一样使用列表中的各个值。例如,可以使用 f 字符串根据列表中的值
来创建消息。

message = f'I have a {letters[0].lower()}pple'
print(message)  # I have a apple

3.2 修改、添加和删除元素

3.2.1 修改列表元素

修改列表元素的语法与访问列表元素的语法类似。要修改列表元素,可指定列表名和要修改
的元素的索引,再指定该元素的新值。

letters[1] = 'E'
print(letters)  # ['A', 'E', 'C']

3.2.2 在列表中添加元素

  1. 在列表末尾添加元素
letters.append('F')
print(letters)  # ['A', 'E', 'C', 'F']
  1. 在列表中插入元素
letters.insert(3, 'D')
print(letters)  # ['A', 'E', 'C', 'D', 'F']

3.2.3 从列表中删除元素

  1. 使用 del 语句删除元素
    如果知道要删除的元素在列表中的位置,可使用del语句。
del letters[1]
print(letters)  # ['A', 'C', 'D', 'F']
  1. 使用方法 pop()删除元素
    方法pop()删除列表末尾的元素,并能让你能够接着用它。
new_let = letters.pop()  # 获取末尾元素赋值给new_let,并删除末尾一个元素
print(new_let)  # F
print(letters)  # ['A', 'C', 'D']
  1. 弹出列表中任何位置处的元素
    可以使用pop()删除列表中的任意位置的元素,只需要在圆括号中指定要删除元素的索引即可。
letters = ['A', 'B', 'C', 'D', 'E']
new_let = letters.pop(0)  # 获取0位置元素赋值给new_let,并删除0位置元素
print(new_let)  # A
print(letters)  # ['B', 'C', 'D', 'E']
  1. 根据值删除元素
    如果只知道要删除的元素的值,可使用方法remove()。但是方法remove()只能删除第一个指定的值。如果要删除的值可能在列表中出现多次,可以使用循环来实现。
letters.remove('C') 
print(letters)  # ['B', 'D', 'E']

3.3 组织列表

3.3.1 使用方法 sort()对列表永久排序

方法 sort()可以对列表进行排序。

letters = ['A', 'C', 'D', 'B', 'E']
letters.sort()  # 正序
print(letters)  # ['A', 'B', 'C', 'D', 'E']
letters.sort(reverse=True)  # 倒序
print(letters)  # ['E', 'D', 'C', 'B', 'A']

3.3.2 使用函数 sorted()对列表临时排序

要保留列表元素原来的排列顺序,同时以特定的顺序呈现它们,可使用函数 sorted()。函数
sorted()让你能够按特定顺序显示列表元素,同时不影响它们在列表中的原始排列顺序。

letters = ['A', 'C', 'D', 'B', 'E']
print(sorted(letters))  # ['A', 'B', 'C', 'D', 'E']

3.3.3 倒着打印列表

要反转列表元素的排列顺序,可使用方法 reverse()。

letters = ['A', 'C', 'D', 'B', 'E']
letters.reverse()
print(letters)  # ['E', 'B', 'D', 'C', 'A']

3.3.4 确定列表的长度

使用函数len()可快速获悉列表的长度。

print(len(letters))  # 5

3.4 使用列表时避免索引错误

索引错误意味着 Python 在指定索引处找不到元素。

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

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

相关文章

继续引爆!5天连出2个里程碑成果,离子阱量子计算机嗨翻天!

5月30日,清华大学的一项成果被Nature审稿人称为“量子模拟领域的巨大进步”!“值得关注的里程碑”!该成果就是中国科学院院士、清华大学交叉信息研究院教授段路明带领研究组在量子模拟计算领域取得的重要突破。段路明研究组首次实现512离子二…

码蹄集部分题目(2024OJ赛18期;并查集+ST表+贪心)

1🐋🐋史莱姆融合(钻石;并查集) 时间限制:1秒 占用内存:128M 🐟题目描述 🐟题目思路 这道题目使用并查集,同一集合的所有元素的最顶上的祖父节点是统一的。…

获取当前周周一和周日的日期(格式20240607)

获取当前周周一和周日的日期(格式20240607) function getWeekStartAndEndDate() {const today new Date() // 获取当前日期const dayOfWeek today.getDay() // 获取今天是周几,返回值是0(周日)到6(周六&…

Spring框架相关集成

Spring RMI使用和原理_springboot rmi原理-CSDN博客 Spring监听器和定时任务_定时任务怎么用监听器-CSDN博客 Spring框架提供的工具类-CSDN博客 SpringBoot注解解析-CSDN博客 SpringBoot集成shiro认证授权框架_shiro 1.12-CSDN博客 SpringBoot集成Swagger-CSDN博客 Spring…

逆波兰表达式

目录 一、定义 二、算法步骤 三、代码实现 一、定义 逆波兰表达式又叫做后缀表达式,是一种没有括号,并严格遵循“从左到右”运算的后缀式表达方法。 二、算法步骤 1、首先构造一个运算符栈,此运算符在栈内遵循越往栈顶优先级越高的原则。 …

使用shell脚本检查Oracle表空间使用率

需求:需要监控Oracle数据库表空间使用率和是否设置自动扩展,展示在监控平台上 脚本如下: [oracleracdb2:/home/oracle]$ cat tablespace.sh #!/bin/bashexport ORACLE_BASE/u01/app/oracle export ORACLE_HOME/u01/app/oracle/product/19.3…

20240607每日通信--------VUE3前端引入scoket-io,后端引入Netty-SocketIO,我成功了,希望一起交流沟通

无语 前置: VUE3 前端集成scoket-io socket.io-client Sringboot 3.0JDK17集成Netty-SocketIO Netty-SocketIO 失败原因一: 前期决定要写demo时候,单独了解了,后端引入Netty-SocketIO注意事项,详见我先头写的博客 前…

路径

自学python如何成为大佬(目录):https://blog.csdn.net/weixin_67859959/article/details/139049996?spm1001.2014.3001.5501 用于定位一个文件或者目录的字符串被称为一个路径。在程序开发时,通常涉及两种路径,一种是相对路径,另一种是绝对…

G5 - Pix2Pix理论与实战

🍨 本文为🔗365天深度学习训练营 中的学习记录博客🍖 原作者:K同学啊 目录 理论知识图像翻译CGANU-NetPix2Pix损失函数模型结构生成器差别器 模型效果总结与心得体会 理论知识 前面已经学习了GAN与CGAN,这节开始学习P…

LeetCode1143最长公共子序列

题目描述 给定两个字符串 text1 和 text2,返回这两个字符串的最长 公共子序列 的长度。如果不存在 公共子序列 ,返回 0 。一个字符串的 子序列 是指这样一个新的字符串:它是由原字符串在不改变字符的相对顺序的情况下删除某些字符&#xff08…

大厂真实面试题(一)

滴滴大数据sql 取出累计值与1000差值最小的记录 1.题目 已知有表t_cost_detail包含id和money两列,id为自增,请累加计算money值,并求出累加值与1000差值最小的记录。 2.分析 本题主要是想找到累加值域1000差距最小的记录,也就是我们要对上述按照id进行排序并且累加,并…

正则表达式----IP地址合法性判断

一、正则表达式常见匹配字符快速回顾 符号描述.匹配处换行符\n之外任意1个字符[]匹配[]中任意一个\d一个0-9数字\D匹配非数字\w匹配单词字符:a-z、A-Z、0-9\W匹配非单词字符\s匹配空格、tab健\S匹配非空格,tab健 常用的匹配规则-匹配字符数量 匹配前一个…

SQL注入二次注入

SQL注入是一种常见的网络攻击技术,它主要针对基于SQL语言的数据库系统。在Web应用程序中,如果开发者没有对用户输入进行适当的过滤或转义,攻击者就可以通过在输入字段中插入或“注入”SQL命令来操纵数据库,从而执行未授权的数据库…

【机器学习基础】Python编程06:五个实用练习题的解析与总结

Python是一种广泛使用的高级编程语言,它在机器学习领域中的重要性主要体现在以下几个方面: 简洁易学:Python语法简洁清晰,易于学习,使得初学者能够快速上手机器学习项目。 丰富的库支持:Python拥有大量的机器学习库,如scikit-learn、TensorFlow、Keras和PyTorch等,这些…

婚恋网源码 相亲交友小程序源码

婚恋网源码 相亲交友小程序源码 1、婚恋相亲交友系统 超大型婚恋社交、相亲、征婚、互动系统,继承了此前O2O、SNS及B2C的优秀特点 2、媒婆推广返利系统 针对广大婚恋网站运营者而推出的一套共享返利婚恋模式,全民红娘,会员裂变式增长 3、…

VBA语言専攻通知20240608

通知20240608 各位学员∶本周MF系列VBA技术资料增加621-625讲,T3学员看到通知后请免费领取,领取时间6月7日晚上19:00-6月8日晚上20:00。本次增加内容: MF621:为组合框添加工作表数据 MF622:在代码中使用π值 MF623:在窗体上使用切换按钮 MF624:删除…

Windows下安装和配置Redis

目录 1、下载redis压缩包 2、解压redis文件 3、启动redis临时服务 4、打开Redis客户端进行连接 5、使用一些基础操作来测试 5.1、输入ping命令来检测redis服务器与redis客户端的连通性 5.2、使用set和get命令测试redis数据库进行数据存储和获取 5.3、在命令中通过shut…

一个程序员的牢狱生涯(56)开镣

星期二 开镣 省高院的人等大镣在最终判决书上签字后,安慰了几句大镣。郑所带领他们走出了内班。郑所在临走前吩咐严所安排给大镣卸下刑具,这也是重刑犯在法院由死刑改判为死缓后的规定。 大镣在省高院的人安慰下,也慢慢地不再哭泣。我和老杨在一边安慰着大镣,严所也站在一边…

忘记加await,返回结果undefined

今日bug记录,忘记加await,返回结果undefined 如果你通过 log(res) 得到的是一个 PromiseResult 对象,而在该对象中确实有一个名为 result 的数组,但是使用 log(res.result) 输出却是 undefined,可能是因为在 log(res.…

flowable 工作流从入门到精通

HelloWorld 语雀文档地址: https://www.yuque.com/paomian-ldog4/by12xp/uqg6yhhgzeinaxge#snmoq 相关文档 https://tkjohn.github.io/flowable-userguide/ 文档手册 https://github.com/flowable/flowable-engine/releases/tag/flowable-6.8.0 flowable-ui下载地…