Python--列表简介

列表是什么

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

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

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

下面是⼀个简单的示例

cpp 复制代码
students = ['刘备','曹操','孙权']  
print(students)  

1.访问列表元素

使用索引(从0开始)来访问列表中的元素。

例如输出第一个学生的姓名

cpp 复制代码
students = ['刘备','曹操','孙权']
print(students[0])

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

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

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

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

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

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

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

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

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

3.使用列表中的各个值

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

下面尝试从列表中提取第⼀个同学,并使用这个值创建⼀条消息:

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

4.常见错误

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

cpp 复制代码
students = ['刘备', '曹操', '孙权']
print(students[3])

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

3.2 修改,添加和删除元素

列表(list)是一种可变的序列类型,这意味着列表创建后,将随着程序的运行修改,添加或者删除元素。

例如,你可能创建了⼀个游戏,要求玩家消灭从天而降的外星人。为此,可在开始时将外星人存储在列表中,每当有外星人被消灭时,将其从列表中删除,而每次有新的外星人出现时,将其添加到列表中。在整个游戏运行期间,外星人列表的长度将不断变化。

1.修改元素

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

列表名[索引] = 新值

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

2.添加元素

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

2.1 在列表末尾添加元素

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

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

append() 方法让动态创建列表易如反掌。你可以先创建⼀个空列表,再使用append() 添加元素。

这种创建列表的方式极其常见,因为经常要等程序运行后,你才知道在程序中需要存储哪些数据。

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

2.2 插入元素

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

insert(索引,新元素)

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

3.删除元素

1.使用del删除元素

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

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

使用 del 语句删除了列表 students 中的第二个元素"曹操",结果如下:

使用 del 语句将元素从列表中删除后,你就无法再访问它了。

2.使用pop方法删除元素

pop(索引),删除索引位置的元素,不给索引则删除末尾元素

你如果只需要删除列表的末尾元素,可以使用pop函数。

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

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

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

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

该使用 del 语句还是 pop() 方法,下面是⼀个简单的判断标准:

如果要从列表中删除⼀个元素,且不再以任何方式使用它,就使用 del 语句;

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

根据值删除元素

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

remove( 要删除的值 )

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

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


本篇完!

相关推荐
喵叔哟5 分钟前
重构代码中引入外部方法和引入本地扩展的区别
java·开发语言·重构
尘浮生11 分钟前
Java项目实战II基于微信小程序的电影院买票选座系统(开发文档+数据库+源码)
java·开发语言·数据库·微信小程序·小程序·maven·intellij-idea
hopetomorrow24 分钟前
学习路之PHP--使用GROUP BY 发生错误 SELECT list is not in GROUP BY clause .......... 解决
开发语言·学习·php
小牛itbull34 分钟前
ReactPress vs VuePress vs WordPress
开发语言·javascript·reactpress
请叫我欧皇i43 分钟前
html本地离线引入vant和vue2(详细步骤)
开发语言·前端·javascript
nuclear20111 小时前
使用Python 在Excel中创建和取消数据分组 - 详解
python·excel数据分组·创建excel分组·excel分类汇总·excel嵌套分组·excel大纲级别·取消excel分组
闲暇部落1 小时前
‌Kotlin中的?.和!!主要区别
android·开发语言·kotlin
GIS瞧葩菜1 小时前
局部修改3dtiles子模型的位置。
开发语言·javascript·ecmascript
chnming19871 小时前
STL关联式容器之set
开发语言·c++
Lucky小小吴1 小时前
有关django、python版本、sqlite3版本冲突问题
python·django·sqlite