(十九)本章回查与下一步
| 用途 | 已学写法 | 读法 |
|---|---|---|
| 同时接收多个值 | a, b = 1, 2 |
右边求值,左边按位置绑定 |
| 交换绑定 | a, b = b, a |
先读旧值,再一起安排接收位置 |
| 运算后更新 | +=、-=、*=、//= 等 |
数值保存计算结果;列表的 +=、*= 原地修改对象 |
| 加一与减一 | count += 1、count -= 1 |
Python 没有自增自减运算符,连续正负号不会更新整数 |
| 明确运算顺序 | (a + b) * c、a + (b * c) |
不用死记优先级,用括号直接表示准备先算的部分 |
| 批量整数输入 | a, b, c = map(int, input().split()) |
切分、按需转换、读取拆包 |
| 多项收集 | first, *rest = values |
第一项单独接收,其余项形成列表 |
| 给调用传多项参数 | print(*values) |
把可迭代对象拆成位置参数 |
| 生成新列表 | [f for x in source if condition] |
取项、筛选、计算结果 f |
| 按需计算 | (x * x for x in source) |
迭代时逐项产生结果 |
| 编号与配对 | enumerate(...)、zip(...) |
为每项提供编号,或按位置取多份数据 |
| 找到一个就结束 | for ... break ... else ... |
提前命中时跳出,否则执行未命中处理 |
| 按结构分派 | match ... case ... |
检查结构并捕获需要的值 |
| 多行注释与多行文本 | 连续的 #、三引号字符串 |
前者解释代码,后者保存文本;文档字符串还要看所在位置 |
| 整数二进制处理 | &、|、^、~、<<、>> |
按位处理或移动位置,结合对象类型阅读符号 |
| 连接字符串项 | " / ".join(titles) |
用调用者这份分隔符连接各项 |
| 缺省插入与合并 | setdefault、base | changes |
分别跟踪是否插入、是否新建字典与重复键采用的值 |
如果能够把这些写法展开,解释每个名称代表什么、一次操作修改了哪个对象,就已经能读懂不少 Python 程序。接下来把菜单中的“解析命令”“增加记录”“生成显示内容”分别写成函数,程序的职责就会从几段循环和分支变成可以组合、可以单独检查的工具。
文档回查入口:Python 3.12 控制流、内置类型、赋值语句。
本章习题解答与推导 按题号整理实现、过程说明与运行检查,可在完成练习后逐项对照。