第 5 章 if 语句 编程时经常需要检查⼀系列条件,并据此决定采取什么措施。在 Python 中,if 语句让你能够检查程序的当前状态,并采取相应的措 施。 在本章中,你将学习条件测试,以检查你感兴趣的任何条件。你将学习简 单的 if 语句,以及如何创建⼀系列复杂的 if 语句来确定当前到底处于什 么条件下。接下来,你将把学到的知识应⽤于列表:编写⼀个 for 循环, 以⼀种⽅式处理列表中的⼤多数元素,以另⼀种⽅式处理包含特定值的元 素。 5.1 ⼀个简单的⽰例 下⾯的⽰例演⽰了如何使⽤ if 语句来正确地处理特殊的情形。假设你有⼀ 个汽⻋列表,想将其中每辆汽⻋的名称打印出来。对于⼤多数汽⻋,应以 ⾸字⺟⼤写的⽅式打印其名称,但是汽⻋名 'bmw' 应以全⼤写的⽅式打 印。
5.1 一个简单的示例
5.1 ⼀个简单的⽰例 下⾯的⽰例演⽰了如何使⽤ if 语句来正确地处理特殊的情形。假设你有⼀ 个汽⻋列表,想将其中每辆汽⻋的名称打印出来。对于⼤多数汽⻋,应以 ⾸字⺟⼤写的⽅式打印其名称,但是汽⻋名 'bmw' 应以全⼤写的⽅式打 印。
这节解决什么:这一节主要解决《第 5 章 if 语句》里一个更具体的子问题:5.1 一个简单的示例 该怎样落到实际代码或项目动作上。
怎么用到自己的系统:不要只把它当书中的小节标题,最好把它改写成一个你能亲手运行、修改或调试的微练习。
提醒:常见误区是只看懂例子表面流程,却没有把这一节抽成自己能迁移的规则。
5.2 条件测试
5.2 条件测试 每条 if 语句的核⼼都是⼀个值为 True 或 False 的表达式,这种表达式 称为条件测试。 Python 根据条件测试的值是 True 还是 False 来决定是否 执⾏ if 语句中的代码。如果条件测试的值为 True, Python 就执⾏紧跟在 if 语句后⾯的代码;如果为 False, Python 就忽略这些代码。 5.2.1 检查是否相等 ⼤多数条件测试将⼀个变量的当前值与特定的值进⾏⽐较。
这节解决什么:这一节主要解决《第 5 章 if 语句》里一个更具体的子问题:5.2 条件测试 该怎样落到实际代码或项目动作上。
怎么用到自己的系统:不要只把它当书中的小节标题,最好把它改写成一个你能亲手运行、修改或调试的微练习。
提醒:常见误区是只看懂例子表面流程,却没有把这一节抽成自己能迁移的规则。
5.3 if 语句
5.3 if 语句 理解条件测试之后,就可以开始编写 if 语句了。if 语句有很多种,选择 使⽤哪⼀种取决于要测试的条件数。前⾯在讨论条件测试时,列举了多个 if 语句⽰例,下⾯更深⼊地讨论这个主题。 5.3.1 简单的 if 语句 最简单的 if 语句只有⼀个条件测试和⼀个操作: if conditional_test: do something 第⼀⾏可包含任意条件测试,⽽在紧跟在测试后⾯的缩进代码块中,可执 ⾏任意操作。
这节解决什么:这一节主要解决《第 5 章 if 语句》里一个更具体的子问题:5.3 if 语句 该怎样落到实际代码或项目动作上。
怎么用到自己的系统:不要只把它当书中的小节标题,最好把它改写成一个你能亲手运行、修改或调试的微练习。
提醒:常见误区是只看懂例子表面流程,却没有把这一节抽成自己能迁移的规则。
5.4 使用 if 语句处理列表
5.4 使⽤ if 语句处理列表 结合使⽤ if 语句和列表,可完成⼀些有趣的任务:对列表中特定的值做特 殊处理;⾼效管理不断变化的情形,如餐馆是否还有特定的⾷材;证明代 码在各种情形下都将按预期运⾏。 5.4.1 检查特殊元素 本章开头通过⼀个简单的⽰例演⽰了如何处理特殊值 'bmw'—— 需要采⽤ 不同的格式打印它。现在你对条件测试和 if 语句有了⼤致的认识,下⾯来 进⼀步研究如何检查列表中的特殊值,并对其做合适的处理。 继续使⽤前⾯的⽐萨店⽰例。
这节解决什么:这一节主要解决《第 5 章 if 语句》里一个更具体的子问题:5.4 使用 if 语句处理列表 该怎样落到实际代码或项目动作上。
怎么用到自己的系统:不要只把它当书中的小节标题,最好把它改写成一个你能亲手运行、修改或调试的微练习。
提醒:常见误区是只看懂例子表面流程,却没有把这一节抽成自己能迁移的规则。
5.5 设置 if 语句的格式
5.5 设置 if 语句的格式 本章的每个⽰例都展⽰了良好的格式设置习惯。在条件测试的格式设置⽅ ⾯, PEP 8 提供的唯⼀建议是:在诸如 ==、>= 和 <= 等⽐较运算符两边各 添加⼀个空格。例如: if age < 4: 要⽐ if age<4: 更好。 这样的空格不会影响 Python 对代码的解读,只是让代码阅读起来更容易。 动⼿试⼀试 练习 5.12 :设置 if 语句的格式 审核你在本章编写的程序,确保正确 地设置了条件测试的格式。
这节解决什么:这一节主要解决《第 5 章 if 语句》里一个更具体的子问题:5.5 设置 if 语句的格式 该怎样落到实际代码或项目动作上。
怎么用到自己的系统:不要只把它当书中的小节标题,最好把它改写成一个你能亲手运行、修改或调试的微练习。
提醒:常见误区是只看懂例子表面流程,却没有把这一节抽成自己能迁移的规则。
5.6 小结
5.6 ⼩结 在本章中,你⾸先学习了如何编写结果要么为 Ture、要么为 False 的条 件测试。然后学习了如何编写简单的 if 语句、if-else 语句和 if- elif-else 语句。在程序中,可以使⽤这些结构来测试特定的条件,以确 定这些条件是否满⾜。你接着学习了在使⽤ for 循环⾼效处理列表元素 时,如何对某些元素做特殊处理。你还再次学习了 Python 在代码格式⽅⾯ 提出的建议。遵循这些建议,即便你编写的程序越来越复杂,其代码也依 然易于阅读和理解。
这节解决什么:这一节主要解决《第 5 章 if 语句》里一个更具体的子问题:5.6 小结 该怎样落到实际代码或项目动作上。
怎么用到自己的系统:不要只把它当书中的小节标题,最好把它改写成一个你能亲手运行、修改或调试的微练习。
提醒:常见误区是只看懂例子表面流程,却没有把这一节抽成自己能迁移的规则。