Python闯关第3关:列表——把杂物间升级成智能收纳柜!
通关奖励:一次能装N个数据,还能随时整理,编程效率×10!
1. 创建收纳柜(列表)
2. 四大整理术:增删改查
3. 懒人神器:长度、排序、反转
| 场景 | 示例代码 | 小提示 |
|---|---|---|
| 纯文本购物清单 | `shopping = ["牛奶", "面包", "鸡蛋"]` | 逗号别漏! |
| 纯数字成绩表 | `scores = [95, 88, 92, 79]` | 一样用方括号 |
| 混搭杂物盒 | `mix = ["张三", 25, True, "Python"]` | Python不挑食 |
⚠️ 踩坑预警
`fruits = ["苹果" "香蕉" "橙子"]` → 漏逗号秒变字符串拼接,直接翻车!
| 操作 | 语法 | 生活类比 | 示例 |
|---|---|---|---|
| 精准索引 | `list[i]` | 第i格抽屉 | `shopping[2]` → `'鸡蛋'` |
| 批量切片 | `list[start:stop]` | 连续几格 | `shopping[1:3]` → `['面包','鸡蛋']` |
⚠️ 索引从0开始,越界就报`IndexError`!
```python
shopping.append("酸奶") # 直接丢到最后
shopping.insert(2, "火腿") # 塞进第2格,其它自动后移
```
```python
scores[1] = 89 # 把88改成89,简单粗暴
```
| 方案 | 语法 | 特点 |
|---|---|---|
| 按值删 | `list.remove(x)` | 不知道索引也能删 |
| 按位弹出 | `list.pop(i)` | 删完还告诉你删的是谁 |
| 暴力清空 | `del list[i]` 或 `del list` | 整柜消失术,慎用!|
| 神器 | 用法 | 效果 |
|---|---|---|
| 长度雷达 | `len(list)` | 返回元素数量 |
| 升序/降序 | `list.sort()` 或 `list.sort(reverse=True)` | 原地排序,直接变脸 |
| 倒序镜面 | `list.reverse()` | 顺序180°大转弯 |
⚠️ 以上都会改原柜!想留底请先复制:
`new = old.copy()`
"方括号创柜子,索引切片随便取;append丢末尾,insert插队精;改值用等号,删除remove/pop看需求;长度len()心中有,排序反转一键走!"
🎯 练习题(下一关前必做)
1. 创建本周待读书单`books`,至少5本
2. 把最不想读的那本移到末尾
3. 用`len()`打印剩余工作量
4. 按书名长度升序排列,输出结果