六、数据操作进阶:一行顶十行
第 30~34 课
到这块语法主干已经学完了,剩下的都是「让代码更短、更清楚」的技巧。学完最大的感受是:原来要写六行的事,一行就能干完。
第 30 课 列表推导式
以前批量算年租得这么写:
推导式一行搞定:
语法 [表达式 for 变量 in 容器],读作「对于 rents 里每个 r,算出 r × 12,装进新列表」。
还能加条件过滤:
比喻:像一台复印机——给一张清单,说「每项都 ×12」,它一次性处理成新清单。
第 31 课 解包
把一组值一次拆开,装进多个变量:
最实用的场景是遍历字典:
items() 给出的一对一对,直接被 name, rent 拆开——名字进 name、金额进 rent,一行拿齐。
第 32 课 常用内置函数
Python 自带的、不用导入直接能用的小工具:
| 函数 | 作用 | 例子 |
|---|---|---|
sum() |
求和 | sum([4500, 5200]) → 9700 |
max() |
最大值 | max(rents) |
min() |
最小值 | min(rents) |
sorted() |
排序(返回新列表) | sorted(rents) |
len() |
长度 | len(rents) |
求总和、找最高最低,一行搞定——简直是为对账准备的。
(enumerate() 也常用,遍历时给每个元素配个序号:for i, r in enumerate(rents):。)
第 33 课 f-string:把变量嵌进文字
以前拼句子要 + 还要记得 str() 转数字,啰嗦:
f-string 直接把变量嵌进去:
要点:字符串开头加 f,变量用 {花括号} 包起来,数字不用再转文字。像一份「带空格的合同模板」,{} 是空格,Python 自动填。
批量生成催缴账单:
第 34 课 数据清洗
真实数据往往是「脏」的——带多余空格、大小写乱。两个清洗工具:
| 工具 | 作用 |
|---|---|
.strip() |
去掉首尾空格 |
.lower() / .upper() |
统一小写 / 大写 |
配合推导式,一行洗一整批:
这一步看着不起眼,但实际干活时最先用上——从表格导出来的数据,十有八九带空格。