更新時(shí)間:2021-07-16 來源:黑馬程序員 瀏覽量:
異常處理的主要目的是防止因外部環(huán)境的變化導(dǎo)致程序產(chǎn)生無法控制的錯(cuò)誤,而不是處理程序的設(shè)計(jì)錯(cuò)誤。因此,將所有的代碼都用try語句包含起來的做法是不推薦的,try語句應(yīng)盡量只包含可能產(chǎn)生異常的代碼。Python中try-except語句還可以與else子句聯(lián)合使用,該子句放在except語句之后,表示當(dāng)try子句沒有出現(xiàn)錯(cuò)誤時(shí)應(yīng)執(zhí)行的代碼。其格式如下:
try: 可能出錯(cuò)的語句 ...... except: 出錯(cuò)后的執(zhí)行語句 else: 未出錯(cuò)時(shí)的執(zhí)行語句例如,某程序的分頁顯示數(shù)據(jù)功能可以根據(jù)用戶輸入控制每頁顯示多少條數(shù)據(jù),但要求用戶輸入的數(shù)據(jù)為整數(shù)類型數(shù)據(jù),如果輸入的數(shù)據(jù)符合輸入要求,每頁顯示用戶指定的條數(shù);如果輸入的數(shù)據(jù)不不符合要求,則使用默認(rèn)顯示條數(shù),示例如下:
num =input("請輸入每頁顯示多少條數(shù)據(jù):") # 用戶輸入為字符串 try: page_size = int(num) # 將字符串轉(zhuǎn)化為數(shù)字 except Exception as e: page_size = 20 # 若轉(zhuǎn)化出錯(cuò),則使用預(yù)設(shè)的數(shù)據(jù)量 print(f"當(dāng)前頁顯示{page_size}條數(shù)據(jù)") else: print(f"當(dāng)前頁顯示{num}條數(shù)據(jù)") # 加載數(shù)據(jù)如果用戶輸入的數(shù)據(jù)符合要求,結(jié)果如下所示:
請輸入每頁顯示多少條數(shù)據(jù):15 當(dāng)前頁顯示15條數(shù)據(jù)如果用戶輸入的數(shù)據(jù)不符合要求,結(jié)果如下所示:
請輸入每頁顯示多少條數(shù)據(jù):test 當(dāng)前頁顯示20條數(shù)據(jù)上述示例中,如果用戶輸入的數(shù)據(jù)符合要求,輸入的數(shù)據(jù)將被轉(zhuǎn)換為整數(shù)類型,并執(zhí)行else子句中的代碼;如果用戶輸入的數(shù)據(jù)不符合要求,輸入的數(shù)據(jù)不能正確轉(zhuǎn)換為整數(shù)類型,那么程序執(zhí)行exept子句中的代碼。
【AI設(shè)計(jì)】北京143期畢業(yè)僅36天,全員拿下高薪offer!黑馬AI設(shè)計(jì)連續(xù)6期100%高薪就業(yè)
2025-09-19【跨境電商運(yùn)營】深圳跨境電商運(yùn)營畢業(yè)22個(gè)工作日,就業(yè)率91%+,最高薪資達(dá)13500元
2025-09-19【AI運(yùn)維】鄭州運(yùn)維1期就業(yè)班,畢業(yè)14個(gè)工作日,班級(jí)93%同學(xué)已拿到Offer, 一線均薪資 1W+
2025-09-19【AI鴻蒙開發(fā)】上海校區(qū)AI鴻蒙開發(fā)4期5期,距離畢業(yè)21天,就業(yè)率91%,平均薪資14046元
2025-09-19【AI大模型開發(fā)-Python】畢業(yè)33個(gè)工作日,就業(yè)率已達(dá)到94.55%,班均薪資20763元
2025-09-19【AI智能應(yīng)用開發(fā)-Java】畢業(yè)5個(gè)工作日就業(yè)率98.18%,最高薪資 17.5k*13薪,全班平均薪資9244元
2025-09-19