![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=1739226392-3GgGE17xGAvERKI5UQQSwHjlzp0SilxI-0-2c58ef3cd0929f6679e684d4939618b9)
如果读者有学习过其他程序语言,例如,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=1739226392-emC6MyWoL8UIjm8cejgRowzhJmmXYCo8-0-bd63fca942565dc7bab3f611c27caa18)
实例2:不正确的if语句程序代码,下列因为任意内缩造成错误。
![](https://epubservercos.yuewen.com/6532E4/17214367404798806/epubprivate/OEBPS/Images/Figure-P55_36234.jpg?sign=1739226392-WG66tXIKQETIpBi3WwFufTfq8EU40UIw-0-c19062078b48b503f886080ab87cebd0)
上述笔者讲解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=1739226392-u56e2uVBGZNCRlC98gH2s9gV7p82zixZ-0-cc9e7c7a351cab7145273c28b4b598df)
执行结果
![](https://epubservercos.yuewen.com/6532E4/17214367404798806/epubprivate/OEBPS/Images/Figure-P55_36243.jpg?sign=1739226392-Ve1evRqbcCsp5OeCmRYicXcmvOOQW59Q-0-5addd6a7139950934139acaff4217883)
程序实例ch5_2.py:输出绝对值的应用。
![](https://epubservercos.yuewen.com/6532E4/17214367404798806/epubprivate/OEBPS/Images/Figure-P55_36246.jpg?sign=1739226392-HK9rNS7vPONWooTbLgVXwaxh9fPWaVdk-0-58af56a9047d46ffdb278062b92ef22d)
执行结果
![](https://epubservercos.yuewen.com/6532E4/17214367404798806/epubprivate/OEBPS/Images/Figure-P55_36252.jpg?sign=1739226392-EkH3RGR36QqBnalSXVrXaZGUX4nr2Btr-0-5b64cb40374fd8535da358ee3f960a44)
对于ch5_2.py而言,由于if语句只有一道指令,所以可以将第5行和第6行改写成下列语句。
![](https://epubservercos.yuewen.com/6532E4/17214367404798806/epubprivate/OEBPS/Images/Figure-P55_36255.jpg?sign=1739226392-fbBaLAVZYaXMrVy58WpWGAH653jVzF4M-0-1dd448213d0595130ba430ae675f4390)
上述可以得到相同的结果,详请可参考ch5_2_1.py。