您好,登錄后才能下訂單哦!
對于計(jì)算機(jī)程序來說,要學(xué)會(huì)第一項(xiàng)技能就是"判斷",也就是根據(jù)不同的條件,執(zhí)行不同的程序分支,這樣的程序才有意義。
if語句的作用就是為程序賦予這項(xiàng)"判斷"的技能。使用if語句就需要用到在3.3節(jié)介紹的代碼塊了。Python語句要求當(dāng)if語句的條件滿足時(shí)要執(zhí)行的代碼塊必須縮進(jìn)(一般是縮進(jìn)4個(gè)空格)。if語句的語法格式如下:
if logic expression: #if代碼塊開始
statement1
statement2
...
statementn
otherstatement #if代碼塊結(jié)束
以上代碼中,logic expression表示邏輯表達(dá)式。也就是返回布爾類型有(True或False)的表達(dá)式。由于Python語句的各種數(shù)據(jù)類型都可以用作布爾類型,所以logic expression可以看作普通的表達(dá)式。根據(jù)代碼塊的規(guī)則,每一個(gè)代碼塊的開始行的結(jié)尾要使用冒號(:),如果if代碼塊結(jié)束,退到代碼塊開始行的縮進(jìn)量即可。
下面是if語法的基本用法。
n = 3
if n == 3:
print("n == 3")
print("if代碼塊結(jié)束")
n == 3
if代碼塊結(jié)束
在上面這段代碼中,"n == 3"是邏輯表達(dá)式,本例中的值為True。而"print("n == 3")"是if代碼塊中的語句,由于"n == 3"的值為True,所以"print("n == 3")"會(huì)被執(zhí)行。最后一條語句不屬于if代碼塊,所以無論if語句的條件為True或者False,這行代碼都會(huì)被執(zhí)行。
對于條件語句來說,往往分支不止一個(gè)。例如,上面的代碼如果變量n的值是4,那么if語句的條件就為False,這時(shí)要執(zhí)行條件為False的分支,就可以使用else子句。
n = 4
if n == 3:
print("n == 3")
else:
print("n == 4")
print("if代碼塊結(jié)束")
n == 4
if代碼塊結(jié)束
在上面這段代碼中,n等于4,所以if語句的條件為False,因此else代碼塊中的語句會(huì)被執(zhí)行。if與else都是代碼塊,所以if語句和else語句后面都要以冒號(:)結(jié)尾。
在多分之條件語句,需要使用elif子句設(shè)置更多的條件。elif后面跟邏輯表達(dá)式,elif也是代碼塊,所以后面要用冒號(:)結(jié)尾。另外,在if語句中,if和else部分只能有一個(gè),而elif部分可以有多個(gè)。
n = 4
if n == 3:
print("n == 3")
elif n == 4:
print("n == 4")
elif n == 5:
print("n == 5")
elif n == 6:
print("n == 6")
else:
print("n等于其他值")
print("if代碼塊結(jié)束")
n == 4
if代碼塊結(jié)束
[例 3.3] 本例通過raw_input函數(shù)從控制臺(tái)輸入一個(gè)名字,然后通過條件語句判斷名字以書面字母開頭。
from click._compat import raw_input
name = raw_input("請輸入你的名字:")
if name.startswith("B")
print("名字以B開頭")
elif name.startswith("A")
print("名字以A開頭")
elif name.startswith("F")
print("名字以F開頭")
else:
print("名字以其他字母開頭")
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。