日韩欧乱色一区二区三区在线_久久―日本道色综合久久_欧美日本一区二区_网曝91综合精品门事件在线

千鋒教育-做有情懷、有良心、有品質(zhì)的職業(yè)教育機構(gòu)

手機站
千鋒教育

千鋒學(xué)習(xí)站 | 隨時隨地免費學(xué)

千鋒教育

掃一掃進(jìn)入千鋒手機站

領(lǐng)取全套視頻
千鋒教育

關(guān)注千鋒學(xué)習(xí)站小程序
隨時隨地免費學(xué)習(xí)課程

當(dāng)前位置:首頁  >  技術(shù)干貨  > python程序出錯怎么處理

python程序出錯怎么處理

來源:千鋒教育
發(fā)布人:xqq
時間: 2023-11-10 20:03:02 1699617782

python在程序運行的過程中,如果發(fā)生了錯誤,可以事先約定返回一個錯誤代碼,這樣,就可以知道是否有錯,以及出錯的原因。在操作系統(tǒng)提供的調(diào)用中,返回錯誤碼非常常見。比如打開文件的函數(shù)open(),成功時返回文件描述符(就是一個整數(shù)),出錯時返回-1。

用錯誤碼來表示是否出錯十分不便,因為函數(shù)本身應(yīng)該返回的正常結(jié)果和錯誤碼混在一起,造成調(diào)用者必須用大量的代碼來判斷是否出錯:

deffoo():

r=some_function()

ifr==(-1):

return(-1)

#dosomething

returnr

defbar():

r=foo()

ifr==(-1):

print('Error')

else:

pass

一旦出錯,還要一級一級上報,直到某個函數(shù)可以處理該錯誤(比如,給用戶輸出一個錯誤信息)。

所以高級語言通常都內(nèi)置了一套try...except...finally...的錯誤處理機制,Python也不例外。

try

讓我們用一個例子來看看try的機制:

try:

print('try...')

r=10/0

print('result:',r)

exceptZeroDivisionErrorase:

print('except:',e)

finally:

print('finally...')

print('END')

當(dāng)我們認(rèn)為某些代碼可能會出錯時,就可以用try來運行這段代碼,如果執(zhí)行出錯,則后續(xù)代碼不會繼續(xù)執(zhí)行,而是直接跳轉(zhuǎn)至錯誤處理代碼,即except語句塊,執(zhí)行完except后,如果有finally語句塊,則執(zhí)行finally語句塊,至此,執(zhí)行完畢。

上面的代碼在計算10/0時會產(chǎn)生一個除法運算錯誤:

try...

except:divisionbyzero

finally...

END

從輸出可以看到,當(dāng)錯誤發(fā)生時,后續(xù)語句print('result:',r)不會被執(zhí)行,except由于捕獲到ZeroDivisionError,因此被執(zhí)行。最后,finally語句被執(zhí)行。然后,程序繼續(xù)按照流程往下走。

以上內(nèi)容為大家介紹了python培訓(xùn)之程序出錯怎么處理,希望對大家有所幫助,如果想要了解更多Python相關(guān)知識,請關(guān)注IT培訓(xùn)機構(gòu):千鋒教育。

聲明:本站稿件版權(quán)均屬千鋒教育所有,未經(jīng)許可不得擅自轉(zhuǎn)載。
10年以上業(yè)內(nèi)強師集結(jié),手把手帶你蛻變精英
請您保持通訊暢通,專屬學(xué)習(xí)老師24小時內(nèi)將與您1V1溝通
免費領(lǐng)取
今日已有369人領(lǐng)取成功
劉同學(xué) 138****2860 剛剛成功領(lǐng)取
王同學(xué) 131****2015 剛剛成功領(lǐng)取
張同學(xué) 133****4652 剛剛成功領(lǐng)取
李同學(xué) 135****8607 剛剛成功領(lǐng)取
楊同學(xué) 132****5667 剛剛成功領(lǐng)取
岳同學(xué) 134****6652 剛剛成功領(lǐng)取
梁同學(xué) 157****2950 剛剛成功領(lǐng)取
劉同學(xué) 189****1015 剛剛成功領(lǐng)取
張同學(xué) 155****4678 剛剛成功領(lǐng)取
鄒同學(xué) 139****2907 剛剛成功領(lǐng)取
董同學(xué) 138****2867 剛剛成功領(lǐng)取
周同學(xué) 136****3602 剛剛成功領(lǐng)取
相關(guān)推薦HOT
主站蜘蛛池模板: 延长县| 称多县| 安义县| 武汉市| 灵寿县| 广南县| 军事| 瑞昌市| 合阳县| 清水县| 泸水县| 长沙县| 武义县| 额济纳旗| 格尔木市| 乳山市| 开原市| 依兰县| 正镶白旗| 姜堰市| 九龙城区| 托克托县| 泰安市| 家居| 曲周县| 西充县| 上犹县| 边坝县| 仁寿县| 开封市| 浮山县| 高雄县| 甘孜县| 元阳县| 绿春县| 若羌县| 建阳市| 顺昌县| 望都县| 吉木萨尔县| 逊克县|