2.11 if语句

标准if条件语句的语法如下。

2.11 if语句 - 图1

如果表达式的值非0或者为布尔值True,则代码组if_suite被执行;否则就去执行下一条语句。代码组(suite)是一个Python术语,它由一条或多条语句组成,表示一个子代码块。Python与其他语言不同,条件条达式并不需要用括号括起来。

2.11 if语句 - 图2

Python当然也支持else语句,语法如下。

2.11 if语句 - 图3

Python还支持elif(意指“else-if“)语句,语法如下。

2.11 if语句 - 图4

在本书写作之时,正在进行一个关于是否需要增加switch/case语句的讨论,不过目前并没有什么实质性的进展。在将来版本的Python语言当中,也非常有可能看到这样的“动物“。这个例子似乎有点奇怪、让人觉得困惑,但是因为有了Python干净的语法,if-elif-else语句并不像别人说的那么丑陋(以致不能让人接受)。如果你非要避免写一堆if-elif-else语句,另一种变通的解决方案是使用for循环(参阅2.13)来迭代你可能的“cases“列表。

在第8章你可以学到更多有关if、elif和else条件语句的知识。