练习 30 Else 和 if
1. 你认为 if 对它下面的代码起什么作用?
if 语句在代码中创建了一个“分支”(branch),有点类似于在一本冒险书中,你选择了哪个答案,就翻到对应的一页,如果你选择了不同的答案,就会去到不同的地方。if 语句就是告诉脚本,如果这个布尔表达式是 True,那就运行它下面的代码,否则的话就跳过。
2. 为什么 if 下面的代码要缩进 4 个空格?
通过一行代码结尾的冒号告诉 Python 你在创建一个新的代码块,然后缩进四个空格告诉 Python 这个代码块中都有些什么。这就跟本书前半部分中你学的函数是一样的。
如果没有缩进,你很可能收到一个错误提示。Python 一般会让你在一个带 : 的代码行下面缩进一些内容。
4. 你能从练习 27 里面把一些布尔表达式放进 if 语句吗?试试看。
试试吧,你可以的。你可以把它们写得很复杂,不过复杂的东西一般风格都很糟糕。
5. 如果你改变 people,cats 和 dogs 的初始值会发生什么?
把我的答案和你的比较一下,然后确保你真的理解了代码块的概念。这对你进行接下来的练习很重要。把下面的代码输入进去然后运行。
ex30.py
练习 30 会话
如果多个 elif 块都是 True 会发生什么? Python 从顶部开始,然后运行第一个是 True 的代码块,也就是说,它只会运行第一个。