当前位置: 首页 > article >正文

Python--列表简介

列表是什么

列表让你能够在⼀个地方存储成组的信息,其中既可以只包含几个元素,也可以包含数百万个元素。列表是新手可直接使用的最强大的Python 功能之⼀。

列表(list)是一种可变的序列类型,用于存储一系列有序的元素。这些元素可以是任何类型,包括整数、浮点数、字符串、其他列表(即嵌套列表)等。列表是动态的,可以在运行时增加或删除元素。

用方括号([ ])表示列表,用逗号分隔其中的元素。

下面是⼀个简单的示例

students = ['刘备','曹操','孙权']  
print(students)  

1.访问列表元素

使用索引(从0开始)来访问列表中的元素。
例如输出第一个学生的姓名

students = ['刘备','曹操','孙权']
print(students[0])

通过索引获取列表元素时,只返回该元素,而不包括方括号[ ].

2.索引从0开始而不是1开始

在 Python 中,列表第一个元素的索引是 0,而不是 1,大多数编程语言都是如此 。

students = ['刘备', '曹操', '孙权']
print(students[0])  #输出第一个元素
print(students[1])  #输出第二个元素
print(students[2])  #输出第三个元素

python为访问最后的元素提供了一种特殊的语法。通过将索引指定为-1,可让 Python 返回最后⼀个列表元素:


students = ['刘备', '曹操', '孙权']
print(students[-1]) #访问最后一个元素

这种语法在不知道列表长度的情况下访问最后的元素非常好用。当然它也适用于其他负数索引,例如,索引 -2 返回倒数第⼆个元素,索引 -3 返回倒数第三个元素,依此类推。

students = ['刘备', '曹操', '孙权'] 
print(students[-1]) #访问倒数第一个元素 
print(students[-2]) #访问倒数第二个元素 
print(students[-3]) #访问倒数第三个元素 

-1索引表示倒数第1个元素,-2索引表示倒数第2个元素,…-n索引表示倒数第n个元素,因为-0就是0索引表示第1个元素。

3.使用列表中的各个值

你可以像使用其他变量⼀样使用列表中的各个值。例如,可以使用 f 字符串根据列表中的值来创建消息。
下面尝试从列表中提取第⼀个同学,并使用这个值创建⼀条消息:

nums = [1, 2, 3, 4, 5]
x = nums[0] + nums[-1]  #第1个元素+最后一个元素
print(x)

4.常见错误

在刚使用列表是容易出现索引错误,例如只有三个元素,却访问3号索引第四个元素

students = ['刘备', '曹操', '孙权']
print(students[3])

list index out of range : 列表索引超出范围

3.2 修改,添加和删除元素

列表(list)是一种可变的序列类型,这意味着列表创建后,将随着程序的运行修改,添加或者删除元素。
例如,你可能创建了⼀个游戏,要求玩家消灭从天而降的外星人。为此,可在开始时将外星人存储在列表中,每当有外星人被消灭时,将其从列表中删除,而每次有新的外星人出现时,将其添加到列表中。在整个游戏运行期间,外星人列表的长度将不断变化。

1.修改元素

通过列表名和索引指定具体元素,再指定该元素的新值。

列表名[索引] = 新值

students = ['刘备', '曹操', '孙权']
students[0] = '诸葛亮' #把第1个学生改为诸葛亮

2.添加元素

python提供多种在列表中添加元素的方式。

2.1 在列表末尾添加元素

使用追加append()方法将元素添加到列表末尾。

students = ['刘备', '曹操', '孙权']
print(students)
students.append('张飞') #在列表的末尾添加'张飞'
print(students)

append() 方法让动态创建列表易如反掌。你可以先创建⼀个空列表,再使用append() 添加元素。
这种创建列表的方式极其常见,因为经常要等程序运行后,你才知道在程序中需要存储哪些数据。

students = []  #创建一个空列表
#下面模拟程序运行中添加元素
students.append('刘备') #添加刘备到列表尾
students.append('曹操') #添加曹操到列表尾
students.append('孙权') #添加孙权到列表尾
students.append('张飞') #添加张飞到列表尾
print(students)

2.2 插入元素

使用insert() 方法可在列表指定的索引处插入新元素。

insert(索引,新元素)

students = ['刘备', '曹操', '孙权']
print(students)
students.insert(0, '张飞') #在列表的开头添加'张飞'
print(students)

3.删除元素

1.使用del删除元素
如果知道要删除的元素在列表中的位置,可使用del 语句:

students = ['刘备', '曹操', '孙权']
print(students)
del students[1] #删除曹操
print(students)

使用 del 语句删除了列表 students 中的第二个元素"曹操",结果如下:
使用 del 语句将元素从列表中删除后,你就无法再访问它了。

2.使用pop方法删除元素

pop(索引),删除索引位置的元素,不给索引则删除末尾元素
你如果只需要删除列表的末尾元素,可以使用pop函数。

students = ['刘备', '曹操', '孙权']
print(students)
s = students.pop() #不指定索引,删除的是最后一个 
print(students)
print(f"刚删除的学生是:{s}")

当然利用pop方法,也可以删除任意元素

students = ['唐僧', '孙悟空', '猪八戒','沙悟净']
print(students)
s = students.pop(1) #删除指定索引元素'孙悟空'
print(students)
print(f"刚删除的学生是:{s}")

pop删除的元素可以被变量接收然后再使用

该使用 del 语句还是 pop() 方法,下面是⼀个简单的判断标准:
如果要从列表中删除⼀个元素,且不再以任何方式使用它,就使用 del 语句;

如果要在删除元素后继续使用它,就使用 pop() 方法。

根据值删除元素

如果不知道删除值的索引位置,只知道要删除的元素的值,可使用 remove() 方法。
remove( 要删除的值 )

students = ['唐僧', '孙悟空', '猪八戒','沙悟净'] 
print(students) 
students.remove('猪八戒') 
print(students) 

注意:remove() 方法只删除第⼀个指定的值。如果要删除的值可能在列表中出现多次,就需要使用循环,确保将每个值都删除


本篇完!


http://www.kler.cn/news/295069.html

相关文章:

  • js 写个 最简单的 chrome 插件,修改网页背景颜色
  • 退火吗?C#/WinForm演示退火算法
  • 手写 Vue Router 中的 Hash 模式和 History 模式
  • 反弹shell
  • 【Python报错已解决】 AttributeError: ‘move_to‘ requires a WebElement
  • Redis单机安装
  • 国开(电大)2024秋《文献检索与论文写作》综合练习2
  • 云服务器部署DB-GPT项目
  • 自动驾驶---Motion Planning之轨迹拼接
  • WIN11 ESP32 IDF + VSCODE 环境搭建[教程向]
  • 不会Excel怎么制作桑基图?用什么软件绘制比较好呢?推荐2款简单好用的图表制作工具
  • c++递推
  • 拉取ros2_control_demos存储库
  • List中常见的方法和五种遍历方式
  • windows下使用vscode编写运行以及调试C/C++
  • 基于STM32设计的ECG+PPG人体参数测量系统(华为云IOT)(217)
  • ROS1 + Realsense d455 固件安装+读取rostopic数据
  • nmon服务器监控工具使用
  • 请解释Java Web应用中的前后端分离是什么?它有哪些好处?什么是Java Web中的Servlet过滤器?它有什么作用?
  • ffmpeg的安装和使用教程
  • python--基础语法(1)
  • 《Ajax 是什么?如何在 HTML5 中使用》
  • 数据结构--二叉树(C语言实现,超详细!!!)
  • 彩色成像的基础和应用 原理 Principles (论文引用目录)
  • 2024年高教社杯数学建模国赛C题超详细解题思路分析
  • 图论篇--代码随想录算法训练营第五十天打卡| 深度优先搜索理论基础,98. 所有可达路径,广度优先搜索理论基础
  • 数字化转型专家讲师培训师唐兴通中欧国际工商学院数字化转型战略与实现路径AIGC人工智能数字化战略数字商业模式创新
  • 【数据库中级】1_DBeaver操作数据库
  • 【微信小程序】搭建项目步骤 + 引入Tdesign UI
  • Flink SQL 中常见的数据类型