![Python王者归来](https://wfqqreader-1252317822.image.myqcloud.com/cover/412/31794412/b_31794412.jpg)
上QQ阅读APP看书,第一时间看更新
5-3 if语句
这个if语句的基本语法如下:
if (条件判断): 程序代码区块
上述观念是如果条件判断是True,则执行程序代码区块,如果条件判断是False,则不执行程序代码区块。如果程序代码区块只有一道指令,可将上述语法写成下列格式。
if (条件判断): 程序代码区块
可以用下列流程图说明这个if语句:
![](https://epubservercos.yuewen.com/6532E4/17214367404798806/epubprivate/OEBPS/Images/Figure-P54_35803.jpg?sign=1738829389-24jFszulePkvqyaunkWrjwHhHSQCLvNk-0-06407650ca5af079816744b4fe30d90f)
如果读者有学习过其他程序语言,例如,Visual Basic、C、JavaScript等,在条件表达式中是使用大括号“{ }”,将if语句的程序代码区块包夹做区隔。如下所示(以C语言为实例):
if (age < 20) { printf(“你年龄太小”); printf(“需年满20岁才可购买烟酒”); }
在Python内是使用内缩方式区隔if语句的程序代码区块,编辑程序时可以用Tab键内缩或是直接内缩4个字符空间,表示这是if语句的程序代码区块。相同内容,可以用下列方式处理。
If (age < 20):# 程序代码区块1 print(“你年龄太小”) # 程序代码区块2 print(“需年满20岁才可购买烟酒”)# 程序代码区块2
在Python中内缩程序代码是有意义的,相同的程序代码区块,必须有相同的内缩,否则会产生错误。
实例1:正确的if语句程序代码。
![](https://epubservercos.yuewen.com/6532E4/17214367404798806/epubprivate/OEBPS/Images/Figure-P55_36231.jpg?sign=1738829389-VbAHDILwrlMz7gjrcO6Qe7yQjk97FoXx-0-6f6e0e549840118562c59302dd1a0cd0)
实例2:不正确的if语句程序代码,下列因为任意内缩造成错误。
![](https://epubservercos.yuewen.com/6532E4/17214367404798806/epubprivate/OEBPS/Images/Figure-P55_36234.jpg?sign=1738829389-kaYlYh7S6o03mCHRpNTkeKqHpzIcOHZY-0-fbb0ce48f0da6614828718d9fad26d64)
上述笔者讲解if语句是True时需内缩4个字符空间,读者可能会问可不可以内缩5个字符空间,答案是可以的,但是记得相同程序区块必须有相同的内缩空间。不过如果你是使用Python的IDLE编辑环境,当输入if语句后,只要单击Enter键,编辑程序会自动内缩4个字符空间。
程序实例ch5_1.py:if语句的基本应用。
![](https://epubservercos.yuewen.com/6532E4/17214367404798806/epubprivate/OEBPS/Images/Figure-P55_36237.jpg?sign=1738829389-IyHGssxQTczir3T1YWEOk2pZJ0azJfO8-0-b827df3f57b20b49f4f0cff0048eadfa)
执行结果
![](https://epubservercos.yuewen.com/6532E4/17214367404798806/epubprivate/OEBPS/Images/Figure-P55_36243.jpg?sign=1738829389-uuNtTeNMUu9Jk3cbxnHFKcbk2ABPFzus-0-362c2b513b665f9ba31019329cf9bd5d)
程序实例ch5_2.py:输出绝对值的应用。
![](https://epubservercos.yuewen.com/6532E4/17214367404798806/epubprivate/OEBPS/Images/Figure-P55_36246.jpg?sign=1738829389-3hwYn1RRNpnckUYSYN5FuN2sONgtZtXw-0-196cd007d4581cdd8f8c5795cd7755bb)
执行结果
![](https://epubservercos.yuewen.com/6532E4/17214367404798806/epubprivate/OEBPS/Images/Figure-P55_36252.jpg?sign=1738829389-3Pbs0RPWIVidqoQJlKlKu5EPvJBNQnyM-0-d36c25df7339d64e6106e4b4e392ac9e)
对于ch5_2.py而言,由于if语句只有一道指令,所以可以将第5行和第6行改写成下列语句。
![](https://epubservercos.yuewen.com/6532E4/17214367404798806/epubprivate/OEBPS/Images/Figure-P55_36255.jpg?sign=1738829389-N8tlJZWeWZwP9tSKdnDY7BoWuF0flmsv-0-a6863af2165c30b48ca5a97410e7fe2b)
上述可以得到相同的结果,详请可参考ch5_2_1.py。