苦练Python第22天:11个必学的列表方法
前言
大家好,我是倔强青铜三 。是一名热情的软件工程师,我热衷于分享和传播IT技术,致力于通过我的知识和技能推动技术交流与创新,欢迎关注我,微信公众号:倔强青铜三。欢迎点赞、收藏、关注,一键三连!!!
欢迎来到 100天Python挑战 的第22天!昨天你已学会创建和操作列表,今天我们将深挖 最常用却最常被误用的列表方法,让你的代码瞬间"Pythonic"起来。🐍
📦 今日秘籍
- 核心列表方法:
append()
、insert()
、remove()
、pop()
、sort()
等 - 每个方法的真实业务场景
- 何时用哪个?避坑指南
- 最佳实践 + 常见错误一次说清
🔧 1. append()
------末尾秒加元素
python
fruits = ["apple", "banana"]
fruits.append("cherry")
print(fruits) # ['apple', 'banana', 'cherry']
✅ 场景:购物车追加商品、日志追加最新记录。
📍 2. insert(index, item)
------精准插队
python
fruits.insert(1, "orange")
print(fruits) # ['apple', 'orange', 'banana', 'cherry']
✅ 场景:待办清单把紧急任务置顶。
❌ 3. remove(value)
------按值除名
python
fruits.remove("banana")
print(fruits) # ['apple', 'orange', 'cherry']
⚠️ 注意 :值不存在直接抛 ValueError
,先判断或捕获。
🧹 4. pop(index=-1)
------弹出并拿走
python
last_item = fruits.pop() # 默认弹末尾
print(last_item) # 'cherry'
second_item = fruits.pop(1) # 指定位置
print(second_item) # 'orange'
✅ 场景 :实现栈(LIFO)或队列(配合 pop(0)
)。
🔄 5. clear()
------一键清空
python
fruits.clear()
print(fruits) # []
✅ 场景:重置购物车、清空聊天记录。
🔄 6. sort()
------原地升序
python
numbers = [5, 2, 9, 1]
numbers.sort()
print(numbers) # [1, 2, 5, 9]
降序只需:
python
numbers.sort(reverse=True)
⚠️ 原地修改,原列表顺序永久改变。
🧪 7. sorted(iterable)
------返回新排序副本
python
nums = [4, 1, 7]
new_nums = sorted(nums)
print(new_nums) # [1, 4, 7]
print(nums) # [4, 1, 7] 原列表不动
✅ 场景:需要保留原数据做对比或回滚。
🔁 8. reverse()
------原地反转
python
nums = [1, 2, 3]
nums.reverse()
print(nums) # [3, 2, 1]
📊 9. count(value)
------出现次数统计
python
names = ["Alice", "Bob", "Alice"]
print(names.count("Alice")) # 2
🔍 10. index(value, start=0)
------首次出现下标
python
names = ["Alice", "Bob", "Alice"]
print(names.index("Bob")) # 1
⚠️ 找不到直接抛 ValueError
,可设 start
缩小搜索范围。
➕ 11. extend(iterable)
------批量合并
python
a = [1, 2]
b = [3, 4]
a.extend(b)
print(a) # [1, 2, 3, 4]
✅ 与 +
区别 :extend
原地修改,节省内存;+
生成新列表。
💡 一图胜千言
方法 | 功能简述 | 是否修改原列表 |
---|---|---|
append() |
末尾追加单个元素 | ✅ 是 |
insert() |
指定位置插入 | ✅ 是 |
remove() |
按值删除首个匹配项 | ✅ 是 |
pop() |
按索引删除并返回元素 | ✅ 是 |
clear() |
清空所有元素 | ✅ 是 |
sort() |
原地排序 | ✅ 是 |
sorted() |
返回排序后新列表 | ❌ 否 |
reverse() |
原地反转 | ✅ 是 |
count() |
统计某值出现次数 | ❌ 否 |
index() |
返回某值首次出现的索引 | ❌ 否 |
extend() |
合并另一可迭代对象 | ✅ 是 |
🧠 今日回顾
- 掌握了11个高频列表方法,写出更紧凑、更高效的代码
- 分清"原地修改"与"返回新对象",避免副作用
- 用
extend
代替+
,用sorted
保留原数据,性能与可读性双赢
最后感谢阅读!欢迎关注我,微信公众号 :
倔强青铜三
。欢迎点赞
、收藏
、关注
,一键三连!!!