1、列表简介
Python中的列表(List)是最常用的数据结构之一,允许存储任意类型的元素,并且支持各种灵活的操作。列表是可变的,这意味着列表中的元素可以在创建后被修改,列表的长度可以动态变化,可以随时添加或删除元素。列表中的元素可以通过索引访问,索引从0开始。
list_a = [1,2,3,4,5]
print(list_a) # 输出为 [1, 2, 3, 4, 5]
2、列表特点
有序性:列表中的元素是有序排列的,每个元素都有一个唯一的索引。 |
动态调整大小:列表的大小可以动态变化,添加和删除元素非常方便。 |
混合数据类型:列表可以包含不同类型的元素,例如整数、字符串、甚至其他列表。 |
可变性:列表是可变的,可以随时修改其内容。 |
3、元素切片
切片操作符([:]
)允许从列表中提取子列表。切片操作返回一个新的列表,不修改原列表。切片操作的基本语法是 列表[开始:结束:步长]
,其中 开始
和 结束
是索引,步长
表示元素间的间隔。
3.1基本切片(包含开始,不含结束)
a = [0,1,2,3,4,5,6]
# 包含开始,不含结束
print(a[1:2]) # 输出为 [1]
print(a[:3]) # 输出为 [0,1,2]
print(a[3:]) # 输出为 [3,4,5,6]
print(a[:]) # 输出为 [0,1,2,3,4,5,6]
3.2步长切片
步长用于指定切片时的间隔。默认步长为1,表示连续提取元素。当步长为负数时,可以实现反向切片。
list_a = [0,1,2,3,4,5,6,7,8,9]
# 默认步长为1 ,可以不写 也可以是 print(a[1:2:1])
print(a[1:2]) # 输出 [1]
# 每2位进行切片
print(a[::2]) # 输出 [0,2,4,6,8]
# 反向切片
print(a[::-1]) # 输出 [9,8,7,6,5,4,3,2,1,0]
4.元素增删改查
Python为列表提供了丰富的操作方法,用于添加、删除、修改和查询元素。这些操作方法可以使我们高效地处理列表数据。
4.1新增元素
append(x) :在列表末尾添加元素 x |
extend(iterable) :扩展列表,添加多个元素 |
insert(i, x) :在指定位置 i 插入元素 x |
list_a= [1, 2, 3]
# apped() 在列表末尾新增元素
list_a.append(4)
print(list_a) # 输出:[1, 2, 3, 4]
# extend() 在列表末尾新增多个元素
list_a.extend([5, 6])
print(list_a) # 输出:[1, 2, 3, 4, 5, 6]
# insert() 在列表指定位置新增元素
list_a.insert(3, 'apple')
print(list_a) # 输出:[1, 2, 3, 'apple', 4, 5, 6]
4.2删除元素
remove(x) :移除列表中首次出现的元素 x |
pop([i]) :移除并返回指定位置 i 的元素,默认为最后一个元素 |
clear() :移除列表中的所有元素 |
ist_a = [0,1,2,3,4,5,6,7,8,9]
# remove() 删除列表第一个出现的元素
list_a.remove(1)
print(list_a) # 输出 [0,2,3,4,5,6,7,8,9]
# pop()删除下表对应的元素,为空默认为最后一个
list_a.pop(1)
print(list_a) # 输出 [0,2,3,4,5,6,7,8,9]
list_a.pop()
print(list_a) # 输出 [0,1,2,3,4,5,6,7,8]
# clear()清空列表元素
list_a.clear()
print(list_a) # 输出 []
4.3修改元素
list_a = [0,1,2,3,4,5,6,7,8]
# 通过索引修改元素
list_a[1] = '4'
print(list_a) # 输出 [0,4,2,3,4,5,6,7,8]
# 通过切片修改多个元素
list_a[1:5] = ['a','b','c']
print(list_a) # 输出 [0,'a','b','c',5,6,7,8]
4.4查询元素
index(x) :返回列表中首次出现的元素 x 的索引 |
|
list_a = [0,1,2,3,4,5,6,7,8]
# index() 查询元素下标
print(list_a.index(1)) # 查询列表1的下标为1
# count() 查询元素下班出现多少次
print(list_a.count(3)) # 查询3元素出现多少次 - 1次
4.5内建函数
|
max() :返回列表中的最大值 |
min() :返回列表中的最小值 |
sum() :返回列表中所有元素的和(适用于数字列表) |
sort() :返回列表的排序副本 |
reverse() :返回列表的反转迭代器,需强转为list类型 |
enumerate() :返回列表中的元素和索引,和for循环搭配 |
list_a= [1, 2, 3, 4, 5]
print(len(list_a)) # 输出:5
print(max(list_a)) # 输出:5
print(min(list_a)) # 输出:1
print(sum(list_a)) # 输出:15
# sort() 从小到大排序
sort(list_a)
print(list_a)# 输出:[1, 2, 3, 4, 5]
# 通过reverse=True 从大到小排列
list_a.sort(reverse=True)
print(list_a) # 输出 [5,4,3,2,1]
#需要强转为list类型
print(list(reverse(list_a))) # 输出[5,4,3,2,1]
# enumerate(list_a)
for i, list_a in enumerate(list_a):
print(i, list_a)
#输出
0,1
1,2
2,3
3,4
4,5
元组与列表的区别:Python元组-CSDN博客