📖 知识点
1. 增:append () 在列表末尾添加元素
原地追加单个元素,直接修改原列表
fruits = ["苹果", "香蕉"]
fruits.append("橙子")
print(fruits) # ['苹果', '香蕉', '橙子']
2. 改:通过索引直接赋值,替换已有元素
fruits = ["苹果", "香蕉", "橙子"]
fruits[1] = "葡萄"
print(fruits) # ['苹果', '葡萄', '橙子']
3. 删
pop():不带参数,删除末尾元素,并且返回被删掉的值,可以用变量接收pop(索引):删除指定索引位置元素del 列表[索引]:删除指定索引元素,不会返回被删除的数据
fruits = ["苹果", "香蕉", "橙子"]
item = fruits.pop()
print("pop删掉的元素:", item) #橙子
del fruits[0]
print(fruits) # ['香蕉']⚠️ 避坑提醒
- append 每次只能加1 个元素,append ([1,2]) 会把整个列表当成一项塞进去
- pop /del 如果索引越界,程序直接报错 IndexError
- 只有列表可以修改,字符串不能用索引修改字符!
⚔️ Kata 实战任务
任务:修炼功法清单管理
- 创建功法列表
skill_list = ["变量", "判断", "循环"] - 打印原始功法列表
- 使用 append 新增功法
"列表基础" - 修改第 2 项功法(索引 1)为
"条件判断" - pop () 删除最后一项功法,打印被删除的内容
- del 删除索引 0 的功法
- 打印最终剩下的功法列表
预期输出示例:
原始功法列表: ['变量', '判断', '循环']
追加后: ['变量', '判断', '循环', '列表基础']
修改第2项后: ['变量', '条件判断', '循环', '列表基础']
pop删除的功法: 列表基础
最终功法列表: ['条件判断', '循环']✅ 参考代码
# 创建初始功法列表
skill_list = ["变量", "判断", "循环"]
print("原始功法列表:", skill_list)
# append追加元素
skill_list.append("列表基础")
print("追加后:", skill_list)
# 通过索引修改元素
skill_list[1] = "条件判断"
print("修改第2项后:", skill_list)
# pop删除末尾元素
del_skill = skill_list.pop()
print("pop删除的功法:", del_skill)
# del删除指定索引
del skill_list[0]
print("最终功法列表:", skill_list)🧠 思考题
skill_list.append(["字典","字符串"])执行之后,列表变成什么样?- pop 和 del 的核心区别是什么?什么时候优先用 pop?