【Python 学习第 58 天】列表方法
学习日期:2026-11-14
知识点:列表方法
难度:0.54
一、今日知识点
今天学习的是 列表方法。
列表方法是 Python 列表对象内置的函数,用于增删改查和排序等操作。常用方法包括 append(末尾添加)、insert(指定位置插入)、remove(删除第一个匹配值)、pop(按索引删除并返回)、sort(原地排序)等。注意大多数方法会直接修改列表且返回 None,例如 sort() 返回 None,不要写成 list = list.sort()。示例:nums = 3, 1, 2;
二、详细解析
概念说明
列表(list)是 Python 中最常用的容器之一,而"列表方法"就是列表对象自带的函数,专门用来对列表本身做增、删、改、查、排序等操作。你可以把它理解为列表的"遥控器":不用自己写循环,直接调用方法就能完成常见操作,代码更短、更清晰。
需要特别记住一点:大多数列表方法是原地修改 列表,并且返回值是 None。也就是说,方法改的是原列表,而不是生成一个新列表。理解这一点,能避免很多"为什么打印出来是 None"的困惑。
语法与用法
核心语法都是"列表.方法名(参数)"的形式:
lst.append(x):在末尾追加一个元素。lst.insert(i, x):在下标i处插入元素x,原位置及之后的元素后移。lst.remove(x):删除第一个值为x的元素;不存在会报错。lst.pop(i):删除并返回下标i的元素;不写参数默认删最后一个。lst.sort():原地升序排序;lst.sort(reverse=True)为降序。lst.reverse():原地反转列表顺序。lst.index(x):返回第一个x的下标。lst.count(x):统计x出现次数。
访问元素用下标:lst[0] 是第一个,lst[-1] 是最后一个。
示例代码
python
# 示例 1:增删改查基本操作
nums = [3, 1, 2]
nums.append(4) # 末尾添加 4 -> [3, 1, 2, 4]
nums.insert(1, 9) # 在下标 1 处插入 9 -> [3, 9, 1, 2, 4]
nums.remove(1) # 删除第一个值为 1 的元素 -> [3, 9, 2, 4]
last = nums.pop() # 删除并返回最后一个元素 -> last 为 4
print(nums) # [3, 9, 2]
print(last) # 4
python
# 示例 2:原地排序与访问最后一个元素
scores = [5, 2, 8, 1]
result = scores.sort() # 原地升序排序,返回 None
print(scores) # [1, 2, 5, 8]
print(result) # None,说明 sort 不返回新列表
a = [10, 20, 30, 40]
print(a[-1]) # 40,负下标取最后一个元素
print(a[len(a) - 1]) # 40,等价写法
常见坑
- 把排序结果赋值回去 :
nums = nums.sort()会让nums变成None,因为sort()原地排序且返回None。正确写法是直接nums.sort()。 remove与pop混淆 :remove(x)按"值"删除第一个匹配项;pop(i)按"下标"删除并返回。传错参数会报错或删错元素。- 插入位置理解偏差 :
insert(1, 9)是把 9 放到下标 1 的位置,原下标 1 的元素及其后元素整体后移,而不是"插到第 1 个元素之后"的模糊理解。
小结
列表方法是对原列表进行原地操作的便捷工具,记住"多数方法返回 None、改的是原列表",并区分按值删除与按下标删除,就能避开大部分初学陷阱。
三、今日练习
第 1 题 ✅
题目: 执行以下代码后,列表 lst 的值是什么?
lst = 1, 2, 3
lst.insert(1, 9)
print(lst)
- 我的答案:
B
第 2 题 ✅
**题目:**补全代码:已有列表 nums = 5, 2, 8, 1,请使用列表方法将其按升序排序,并输出排序后的列表。
nums = 5, 2, 8, 1
print(nums)
- 我的答案:
nums.sort()
第 3 题 ✅
**题目:**已知列表 a = 10, 20, 30, 40,以下哪个表达式可以获取列表的最后一个元素 40?
- 我的答案:
B
四、今日总结
- 题目数量:3
- 答对:3
- 正确率:100%
本文由个人 Python 学习智能体自动生成