无码av一区二区三区无码,在线观看老湿视频福利,日韩经典三级片,成 人色 网 站 欧美大片在线观看

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊

【python小技巧3】else的用法

2023-01-02 20:21 作者:小倪同學(xué)0v0  | 我要投稿

說到 else,新手可能會(huì)說不就是?if - else 結(jié)構(gòu)嗎?你能想到幾個(gè)用法呢?

目錄

  1. if - else 結(jié)構(gòu)

  2. ... if ... else ... 結(jié)構(gòu)(條件表達(dá)式、三目運(yùn)算符、三元運(yùn)算符)

  3. for / while - else? 結(jié)構(gòu)

  4. try - except - else? 結(jié)構(gòu)

一、if - else 結(jié)構(gòu)

這個(gè)沒啥好說的,入門難度。

硬要說啥的話,就是 else 后面的冒號別漏了。

常見的分支結(jié)構(gòu)有:

  • 單分支:if

  • 雙分支:if - else

  • 多分支(無else):if - elif - ...

  • 多分支(有else):if - elif - ... - else

二、... if ... else ... 結(jié)構(gòu)(條件表達(dá)式、三元/目運(yùn)算符)

類似于C語言中的 cond ? a : b

如果僅僅是根據(jù)條件確定值的話,使用

不如

來的簡潔,而且可讀性更高,雖然它倆是完全等價(jià)的。

注意:條件表達(dá)式的運(yùn)算符優(yōu)先級較低,僅次于 lambda 匿名函數(shù)表達(dá)式,所以如果作為表達(dá)式的一部分出現(xiàn)時(shí),應(yīng)考慮要不要加括號
e.g.

三、for / while - else 結(jié)構(gòu)

It is executed when the loop terminates through exhaustion of the iterable (with for) or when the condition becomes false (with while), but not when the loop is terminated by a break statement.

——4.?More Control Flow Tools — Python 3.8.14 documentation

說人話就是循環(huán)自然結(jié)束時(shí)會(huì)執(zhí)行 else 里的代碼,被 break 終止循環(huán)時(shí)不會(huì)執(zhí)行。

以后會(huì)專門講?for?循環(huán)(挖坑*1)

四、try - except - else 結(jié)構(gòu)

最完整的處理異常結(jié)構(gòu)是

else 會(huì)在 try 語句塊內(nèi)沒有遇到異常時(shí)執(zhí)行

現(xiàn)在常見的一些組合包括:

  1. try - except - ...

  2. try - except - ... - finally

  3. try - finally

  4. try - except - ... - else

  5. try - except -?...?- else - finally

也就是說:else 和 finally 是可選的,try 和 except 是必須的,在有 finally 的時(shí)候 except 是可選的,但它們出現(xiàn)的順序必須是 try - except - else - finally

執(zhí)行順序:

  1. 先執(zhí)行 try 內(nèi)的代碼

  2. 如果遇到了異常,從上往下依次找符合哪個(gè)異常,考慮繼承關(guān)系(比如 TypeError 繼承自 Exception),只會(huì)執(zhí)行一個(gè) except 的代碼

  3. 如果沒遇到異常,則執(zhí)行 else 代碼塊

  4. 無論如何,都會(huì)執(zhí)行 finally 代碼塊,哪怕前面含有 return, break, continue 等

順帶提一句,永遠(yuǎn)不要寫:

這種代碼,最起碼寫個(gè)

至于為什么,以后有機(jī)會(huì)談(挖坑*2)

總結(jié):

  1. 分支語句中的 else 用于處理其余的情況

  2. 循環(huán)結(jié)構(gòu)中的 else 會(huì)在循環(huán)沒被 break 的時(shí)候執(zhí)行

  3. try 語句中的 else 會(huì)在沒遇到異常時(shí)執(zhí)行

END

參考資料:

https://docs.python.org/3.8/tutorial/controlflow.html

https://docs.python.org/3.8/reference/compound_stmts.html

以上內(nèi)容如有錯(cuò)誤,歡迎指出!


【python小技巧3】else的用法的評論 (共 條)

分享到微博請遵守國家法律
平山县| 汽车| 东光县| 安康市| 晋江市| 勐海县| 克什克腾旗| 二连浩特市| 舞钢市| 当雄县| 阿拉尔市| 辽阳市| 泰顺县| 祁阳县| 聂荣县| 大城县| 西青区| 游戏| 大埔区| 云林县| 乌什县| 裕民县| 和政县| 贞丰县| 汕尾市| 宁都县| 福鼎市| 浦东新区| 彩票| 康保县| 丰台区| 凯里市| 崇州市| 潍坊市| 辽阳市| 西乌珠穆沁旗| 石景山区| 成武县| 平果县| 洞头县| 临西县|