Python零基础入门:列表(List)最全操作详解
2026/7/19 9:06:51 网站建设 项目流程

在Python中,列表(List)是最常用、最重要的有序、可变、可重复序列数据类型,也是日常开发中使用率最高的数据结构之一。它可以存储整数、浮点数、字符串、列表、字典等任意类型的数据,灵活性极强。

本文将从定义、索引、切片、遍历、常用方法五个核心维度,全方位讲解Python列表的基础操作,搭配可直接运行的代码示例,零基础也能轻松看懂。

一、列表的定义

Python列表使用中括号 []进行定义,多个元素之间用逗号,分隔,列表中的元素无需统一数据类型。

1.1 基本语法

# 空列表 list1 = [] # 存储单一数据类型的列表 list2 = [1, 2, 3, 4, 5] # 存储多种数据类型的列表 list3 = [10, 3.14, "Python", True, [1,2]] print(list1) # 输出:[] print(list2) # 输出:[1, 2, 3, 4, 5] print(list3) # 输出:[10, 3.14, 'Python', True, [1, 2]]

1.2 list() 强制转换定义

可以通过list()函数将字符串、元组、集合等可迭代对象转换为列表:

# 字符串转列表 str_list = list("hello") print(str_list) # 输出:['h', 'e', 'l', 'l', 'o'] # 元组转列表 tuple_list = list((1, 2, 3)) print(tuple_list) # 输出:[1, 2, 3]

二、列表的索引

列表是有序序列,每个元素都有唯一的下标(索引),我们可以通过索引精准获取单个列表元素。Python列表索引分为正索引负索引

2.1 正索引(从左向右)

规则:从0开始,依次递增,第一个元素索引为0,第二个为1,以此类推。

2.2 负索引(从右向左)

规则:从-1开始,依次递减,最后一个元素索引为-1,倒数第二个为-2,以此类推。

2.3 代码示例

lst = ["Python", "Java", "C++", "Go", "PHP"] # 正索引取值 print(lst[0]) # 第一个元素:Python print(lst[2]) # 第三个元素:C++ # 负索引取值 print(lst[-1]) # 最后一个元素:PHP print(lst[-3]) # 倒数第三个元素:C++

注意事项:索引取值超出列表范围,会抛出IndexError索引越界异常,开发中需避免。

三、列表的切片

切片是Python列表的核心操作,用于截取列表中的部分元素,生成一个新列表,原列表不会发生改变。相比于索引(取单个元素),切片可以批量取多个元素。

3.1 切片语法

列表[起始索引:结束索引:步长]

起始索引:截取的起始位置,默认为0

结束索引:截取的终止位置,不包含该索引对应的元素,默认为列表长度

步长:元素截取间隔,默认为1,正数从左向右截取,负数从右向左截取

3.2 基础切片示例

lst = [1, 2, 3, 4, 5, 6, 7, 8, 9] # 1. 截取前5个元素(索引0-4) print(lst[0:5]) # 输出:[1, 2, 3, 4, 5] # 2. 省略起始索引,默认从0开始 print(lst[:4]) # 输出:[1, 2, 3, 4] # 3. 省略结束索引,默认截取到末尾 print(lst[3:]) # 输出:[4, 5, 6, 7, 8, 9] # 4. 步长为2,隔一个取一个 print(lst[::2]) # 输出:[1, 3, 5, 7, 9] # 5. 反向切片(列表反转) print(lst[::-1]) # 输出:[9, 8, 7, 6, 5, 4, 3, 2, 1] # 6. 截取倒数3个元素 print(lst[-3:]) # 输出:[7, 8, 9]

四、列表的遍历

遍历指逐个读取列表中的所有元素,是数据处理、筛选、修改的基础操作,日常开发中使用频率极高。这里介绍四种最常用的遍历方式。

4.1 直接for循环遍历(最简常用)

lst = ["苹果", "香蕉", "橙子", "葡萄"] for fruit in lst: print(f"水果:{fruit}")

4.2 索引遍历(可获取下标+元素)

lst = ["苹果", "香蕉", "橙子", "葡萄"] for i in range(len(lst)): print(f"索引{i}:{lst[i]}")

4.3 enumerate遍历(同时获取索引和元素,推荐)

enumerate()可以直接返回元素索引和值,代码更简洁,是开发首选:

lst = ["苹果", "香蕉", "橙子", "葡萄"] for index, value in enumerate(lst): print(f"索引{index}:{value}")

4.4 while循环遍历

lst = ["苹果", "香蕉", "橙子", "葡萄"] for index, value in enumerate(lst): print(f"索引{index}:{value}")

五、列表常用方法

Python列表内置了大量实用方法,支持增、删、改、查、排序、去重、合并等操作,下面整理开发中100%常用的核心方法。

5.1 增加元素(增)

1. append():末尾追加单个元素

在列表末尾添加一个元素,不生成新列表,直接修改原列表

lst = [1, 2, 3] lst.append(4) print(lst) # 输出:[1, 2, 3, 4]
2. extend():末尾追加多个元素

可迭代对象(列表、字符串等)拆解后追加到列表末尾

lst = [1, 2, 3] lst.extend([4,5,6]) print(lst) # 输出:[1, 2, 3, 4, 5, 6]
3. insert():指定索引插入元素

在指定索引位置插入元素,原有元素向后顺延

lst = [1, 2, 3] lst.insert(1, 99) # 在索引1位置插入99 print(lst) # 输出:[1, 99, 2, 3]

5.2 删除元素(删)

1. del:根据索引删除元素
lst = [1, 2, 3, 4] del lst[1] print(lst) # 输出:[1, 3, 4]
2. pop():删除并返回指定索引元素(默认最后一个)
lst = [1, 2, 3, 4] res = lst.pop() # 默认删除最后一个 print(res) # 输出:4 print(lst) # 输出:[1, 2, 3]
3. remove()
:根据元素值删除第一个匹配项
lst = [1, 2, 3, 2] lst.remove(2) # 删除第一个2 print(lst) # 输出:[1, 3, 2]
4. clear():清空列表所有元素
lst = [1, 2, 3] lst.clear() print(lst) # 输出:[]

5.3 修改元素(改)

通过索引直接赋值,覆盖原有元素

lst = [1, 2, 3] lst[1] = 999 # 修改索引1的元素 print(lst) # 输出:[1, 999, 3]

5.4 查询元素(查)

1. index():查找元素对应索引(返回第一个匹配项)
lst = [10, 20, 30, 20] print(lst.index(20)) # 输出:1
2. count():统计元素出现次数
lst = [10, 20, 30, 20, 20] print(lst.count(20)) # 输出:3

5.5 排序与反转

1. sort():列表升序排序(修改原列表)
lst = [3, 1, 4, 2] lst.sort() print(lst) # 升序:[1, 2, 3, 4] lst.sort(reverse=True) print(lst) # 降序:[4, 3, 2, 1]
2. reverse():列表反转
lst = [1, 2, 3, 4] lst.reverse() print(lst) # 输出:[4, 3, 2, 1]

5.6 其他常用操作

1. len():获取列表长度
lst = [1,2,3,4] print(len(lst)) # 输出:4
2. 列表合并(+)、列表复制(*)
lst1 = [1,2] lst2 = [3,4] print(lst1 + lst2) # 合并:[1, 2, 3, 4] print(lst1 * 3) # 复制三倍:[1, 2, 1, 2, 1, 2]

六、总结

1. 列表是Python可变有序序列,支持任意数据类型存储,兼容性极强;

2. 索引取单个元素、切片取多个元素,是列表取值的核心方式;

3. 四种遍历方式适配不同场景,enumerate遍历为开发首选;

4. 增删改查、排序反转等内置方法,可快速完成列表数据处理,是数据分析、爬虫开发的基础核心。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询