自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Python分支語(yǔ)句常見(jiàn)用法

開(kāi)發(fā) 后端
Python分支語(yǔ)句,也稱為選擇語(yǔ)句,體現(xiàn)了程序的選擇結(jié)構(gòu),即對(duì)應(yīng)不同的場(chǎng)景,選擇不同的處理方式。當(dāng)滿足某個(gè)條件的時(shí)候,進(jìn)行對(duì)應(yīng)的操作,不滿足則進(jìn)行其他的操作。

分支語(yǔ)句可分為單分支、二分支和多分支結(jié)構(gòu),在所有分支中,只能選擇其中一條路徑,根據(jù)分支條件成立與否決定是否執(zhí)行。由于只能選擇一條路徑執(zhí)行,所以應(yīng)當(dāng)充分考慮分支語(yǔ)句的條件的設(shè)立規(guī)則。下面由幾個(gè)實(shí)例來(lái)說(shuō)明分支語(yǔ)句的用法。

一、單分支語(yǔ)句:if語(yǔ)句

單分支結(jié)構(gòu)是最簡(jiǎn)單的一種選擇結(jié)構(gòu),語(yǔ)法結(jié)構(gòu)如下:

if 條件表達(dá)式:
語(yǔ)句塊

當(dāng)條件表達(dá)式成立的時(shí)候,執(zhí)行語(yǔ)句塊,不成立則不執(zhí)行。例如:用戶輸入兩個(gè)數(shù),比較其大小,輸出小的一個(gè)。

num_a = int(input('please input a number:'))
num_b = int(input('please input another number:'))
if num_a > num_b:
num_a, num_b = num_b, num_a #交換兩個(gè)數(shù)
print("the smaller one is",num_a)

上例運(yùn)用單分支結(jié)構(gòu),當(dāng)數(shù)a大于數(shù)b的條件成立的時(shí)候,將兩者交換,最后輸出較小的數(shù)a。分支語(yǔ)句中,僅當(dāng)條件成立的時(shí)候才執(zhí)行,否則不執(zhí)行交換,直接順序執(zhí)行分支語(yǔ)句之后的語(yǔ)句。

二、二分支語(yǔ)句:if else語(yǔ)句

二分支結(jié)構(gòu)在單分支結(jié)構(gòu)的基礎(chǔ)上增加了else語(yǔ)句,當(dāng)if條件不成立時(shí),執(zhí)行else語(yǔ)句,語(yǔ)法結(jié)構(gòu)如下:

if 條件表達(dá)式:
語(yǔ)句塊1
else
語(yǔ)句塊2

二分支結(jié)構(gòu)是二選一的結(jié)構(gòu),語(yǔ)句塊1和語(yǔ)句塊2有且只有一個(gè)一定會(huì)被執(zhí)行到。還是上面的例子,用二分支語(yǔ)句可以寫作:

num_a = int(input('please input a number:'))
num_b = int(input('please input another number:'))
if num_a > num_b:
print("the smaller one is",num_b)
else
print("the smaller one is",num_a)

再如,根據(jù)身份證號(hào)碼判斷性別,可以寫作:

id_code = input('請(qǐng)輸入身份證號(hào)碼:')
number = int(id_code[-2])
if number%2 == 0:
print("女性")
else:
print("男性")

這里的else隱含條件是number%2 == 0不成立,即number為奇數(shù),所以也可以將else換做if number%2 == 1,但是從程序的執(zhí)行效率上考慮,兩個(gè)if語(yǔ)句需要執(zhí)行兩次判斷,而else語(yǔ)句不需要做判斷,所以效率更高。

三、多分支結(jié)構(gòu):if – elif – else語(yǔ)句

多分支結(jié)構(gòu)是二分支結(jié)構(gòu)的擴(kuò)展,即多選一的情況,其中else語(yǔ)句是可選的,當(dāng)else存在時(shí),有且只有一個(gè)分支會(huì)被執(zhí)行到。其語(yǔ)法結(jié)構(gòu)如下:

if 條件表達(dá)式1:
語(yǔ)句塊1
elif條件表達(dá)式2:
語(yǔ)句塊2

elif條件表達(dá)式n:
語(yǔ)句塊n
else
語(yǔ)句塊n+1

例如讓用戶輸入身高體重,計(jì)算其BMI指數(shù)。BMI指身體質(zhì)量指數(shù),是用體重(kg)除以身高(m)的平方得到,有國(guó)際通用的衡量標(biāo)椎:  

過(guò)輕

低于18.5

正常

18.5-25(不含)

偏胖

25-30(不含)

肥胖

30-35(不含)

重度肥胖

35及以上

weight = float(input("請(qǐng)輸入你的體重(Kg):"))
height = float(input("請(qǐng)輸入你的身高(m):"))
BMI = weight / height ** 2
if BMI < 0:
print("輸入錯(cuò)誤")
elif BMI < 18.5 :
print("偏瘦")
elif BMI < 25 :
print("正常")
elif BMI < 30 :
print("偏胖")
elif BMI < 35 :
print("肥胖")
else:
print("重度肥胖")

上例通過(guò)計(jì)算得到BMI指數(shù),根據(jù)其值輸出所對(duì)應(yīng)的“檔位”,因?yàn)樵谠O(shè)定分支條件時(shí)應(yīng)當(dāng)注意每個(gè)分支條件之間沒(méi)有重復(fù)區(qū)域,才能保證輸出結(jié)果為其中一種。

四、嵌套分支結(jié)構(gòu)

在分支語(yǔ)句中如果要做進(jìn)一步的條件判斷,就會(huì)用到嵌套的分支結(jié)構(gòu)。嵌套也可以有多層,通過(guò)縮進(jìn)來(lái)表示其包含關(guān)系。

代表性語(yǔ)法結(jié)構(gòu)如下:

if 條件表達(dá)式1:

if條件表達(dá)式2:
語(yǔ)句塊1
else
語(yǔ)句塊2
else
語(yǔ)句塊3

例如上例在做身份證號(hào)的性別判斷時(shí),如果要先對(duì)輸入的身份證號(hào)合法性做基本檢查,例如其位數(shù)是不是正確,則需要嵌套分支:

id_code = input('請(qǐng)輸入身份證號(hào)碼:')
if len(id_code) == 18:
number = int(id_code[-2])
if number%2 == 0:
print("女性")
else:
print("男性")
else:
print("輸入不合法")
責(zé)任編輯:龐桂玉 來(lái)源: Python編程學(xué)習(xí)圈
相關(guān)推薦

2010-11-18 12:58:25

Oracle條件分支語(yǔ)

2010-09-08 17:10:24

SQL循環(huán)語(yǔ)句

2010-06-02 13:24:02

SVN用法

2010-10-27 15:03:47

Oracle with

2010-08-12 09:25:35

Flex控件

2010-07-23 14:12:14

Perl Hash

2010-07-26 14:45:17

Perl Hash

2024-07-29 13:50:58

Linuxdig命令

2010-10-15 11:16:52

MySQL Show語(yǔ)

2023-12-04 07:36:30

DjangoPython

2010-07-16 08:47:53

Perl if語(yǔ)句

2010-11-26 15:32:24

MySQL decla

2016-08-29 17:28:53

JavascriptHtmlThis

2010-07-28 10:38:29

Flex開(kāi)源框架

2011-10-08 15:49:52

Java

2010-06-03 17:08:28

Hadoop Shel

2010-09-26 09:16:16

JVM監(jiān)控工具

2010-01-18 13:46:32

VB.NET條件分支語(yǔ)

2010-08-05 10:16:14

Flex效果

2010-11-11 11:49:02

SQL嵌套SELECT
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)