學(xué)過(guò)C/C++的都知道,else語(yǔ)句是和if語(yǔ)句搭配使用的,但是在Python中,else語(yǔ)句更像是作為一個(gè)模塊,不僅僅可以和if語(yǔ)句搭配,還可以和循環(huán)語(yǔ)句,異常處理語(yǔ)句搭配使用。
下面逐個(gè)進(jìn)行介紹:
<1> if 語(yǔ)句
條件表達(dá)式為真的時(shí)候,執(zhí)行代碼塊1,否則執(zhí)行代碼塊2. (其實(shí)就是一個(gè)二選一的問(wèn)題,必然有一個(gè)執(zhí)行)

Python中if...else...的擴(kuò)展模式:多個(gè)if條件判斷,如下圖所示:整個(gè)代碼塊的執(zhí)行,是順著某些箭頭方向走到結(jié)束(圖中的黑點(diǎn))。
這里需要注意的是,表達(dá)式1,2,3是有優(yōu)先級(jí)的,優(yōu)先級(jí)由高到低。所以對(duì)于某些應(yīng)用,把出現(xiàn)概率高的條件判斷放在前面判斷,效率會(huì)比較高。
比如:班級(jí)的成績(jī)分布80~60區(qū)間的人數(shù)概率較高,如果要給班級(jí)同學(xué)成績(jī)分ABCD等級(jí),應(yīng)該把概率高的區(qū)間先判斷。

<2>while ,for 循環(huán)語(yǔ)句
Python中的循環(huán)語(yǔ)句(無(wú)論是while 還是for)中,經(jīng)常配合continue和break語(yǔ)句,兩者的區(qū)別這里不做介紹。
另外還可以和else語(yǔ)句塊搭配,當(dāng)循環(huán)正常結(jié)束的時(shí)候才會(huì)執(zhí)行一遍else語(yǔ)句塊;如果是非正常結(jié)束的(例如break語(yǔ)句跳出,出現(xiàn)異常等情況),則不會(huì)執(zhí)行else語(yǔ)句塊。
#求最大公約數(shù)def get_max_factor(arg): cnt = arg/2 while cnt > 1: if arg%cnt == 0: print "Max factor of %s is %s"%(arg,cnt) break cnt -= 1 else: print "%s is prime."%argif __name__ == "__main__": for i in range(10,20): get_max_factor(i)##########結(jié)果############Max factor of 10 is 511 is prime.Max factor of 12 is 613 is prime.Max factor of 14 is 7Max factor of 15 is 5Max factor of 16 is 817 is prime.Max factor of 18 is 919 is prime.
以上代碼,當(dāng)循環(huán)正常退出,即arg不會(huì)被2~arg/2間的任意整數(shù)整除的時(shí)候,才會(huì)執(zhí)行else語(yǔ)句塊。這也說(shuō)明了arg是一個(gè)素?cái)?shù)。
<3>try:....esle:.....
以上所述是小編給大家介紹的Python中else語(yǔ)句塊的使用技巧的相關(guān)知識(shí),希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)武林網(wǎng)網(wǎng)站的支持!
新聞熱點(diǎn)
疑難解答
圖片精選