在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)) # 输出12. count()统计元素出现次数lst [10, 20, 30, 20, 20] print(lst.count(20)) # 输出35.5 排序与反转1. sort()列表升序排序修改原列表lst [3, 1, 4, 2] lst.sort() print(lst) # 升序[1, 2, 3, 4] lst.sort(reverseTrue) 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)) # 输出42. 列表合并、列表复制*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. 增删改查、排序反转等内置方法可快速完成列表数据处理是数据分析、爬虫开发的基础核心。