![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=1739620927-1BE5nloYj7sX3SbiLdp7cOStNyj45MpL-0-120e68022839c975a04934c2e3e8846a)
如果读者有学习过其他程序语言,例如,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=1739620927-WNCPqEcRgJziidhcL8aMt5HDihuRqId7-0-3fb4a44bb5cb2823367557576a4dbe36)
实例2:不正确的if语句程序代码,下列因为任意内缩造成错误。
![](https://epubservercos.yuewen.com/6532E4/17214367404798806/epubprivate/OEBPS/Images/Figure-P55_36234.jpg?sign=1739620927-vXOSFa0ZFWx0ojaPeVYQrahvd4U4Pf6T-0-dbf91b65671feb6b682b9701b579ceae)
上述笔者讲解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=1739620927-TH0E3MEWewo6LCpIVOkdmr5kPbcPoKDd-0-8bebefcce402f7d6d65ce4481b1d45e2)
执行结果
![](https://epubservercos.yuewen.com/6532E4/17214367404798806/epubprivate/OEBPS/Images/Figure-P55_36243.jpg?sign=1739620927-AVobGoyVT0kqWAPOvAsYJXnR7g5ccNnJ-0-431a5976c99f18dd4780a80af949f4f6)
程序实例ch5_2.py:输出绝对值的应用。
![](https://epubservercos.yuewen.com/6532E4/17214367404798806/epubprivate/OEBPS/Images/Figure-P55_36246.jpg?sign=1739620927-IDm1SyIvBb3EK8UoczCqpJeXqX5m5OKb-0-176dbc70b756c7f6f151e6f41b5f4790)
执行结果
![](https://epubservercos.yuewen.com/6532E4/17214367404798806/epubprivate/OEBPS/Images/Figure-P55_36252.jpg?sign=1739620927-RYqNOqMMakAsBKoAyTWDJl7HUhZVx2Sy-0-ef22c543e0edaff488cca5b680e36f82)
对于ch5_2.py而言,由于if语句只有一道指令,所以可以将第5行和第6行改写成下列语句。
![](https://epubservercos.yuewen.com/6532E4/17214367404798806/epubprivate/OEBPS/Images/Figure-P55_36255.jpg?sign=1739620927-Ecf2Ug0QNX08yI5M2C0QuWX8IrmRCgdu-0-6e2e811d894d05c6fab441e97eeca436)
上述可以得到相同的结果,详请可参考ch5_2_1.py。