python學習 Day18 異常

2021-08-10 12:32:50 字數 2910 閱讀 5435

異常即是乙個事件,該事件會在程式執行過程中發生,影響了程式的正常執行。一般情況下,在python無法正常處理程式時就是發生乙個異常,異常是python物件,表示乙個錯誤,當python指令碼發生異常時我們需要捕獲處理它,否則程式會終止執行。

異常處理常用形式:

try:

正常操作

...... ...... ......

except:

發生異常,執行這塊**

...... ...... ......

else:

如果沒有異常執行這塊**

...... ...... ......

finally:

不管如何,最後一定要執行的**

...... ...... ......

舉例:

try:a=10

b=0

a/b

exceptexception

ase:\\object是所有類的基類,exception這個類是所有異常類的基類print(e)\\列印出捕獲的異常內容

else:\\與except屬於並列情況,兩者只有乙個執行print(

'this is ok!')

finally:\\無論是否捕獲到異常,都會執行這一步print(

'end')

integer division or modulo by zero

end

a= [1, 2, 3

]try:print(a[5

])

exceptindexerror

ase:\\如果指導報錯型別也可以直接寫明確的報錯型別,或者所有異常類的基類也可以print(e)

list index out of range

常見的異常報錯:了解就好,不需要全部背下來,知道英文報錯的意思,是什麼問題就可以。常見的錯誤要清楚。

根據**的邏輯性,捕獲到異常後,將報錯的地方進行處理。

raise用來觸發異常:語法為  raise [exception [,args [, traceback]]].

語句中exception是異常的型別,例如nameerror。引數是乙個異常引數值,該引數是可選的,如果不提供,異常的引數為」none「。最後乙個引數是可選的(在實踐中很少使用)如果存在,是跟蹤異常物件。

try:a=10

b=0

a/b

exceptexception

ase:print(e)

raisee

else:print(

'this is ok!')

finally:print(

'end')

print(

'lllllllllllll')

traceback (most recent call last):

file "except/demo1.py", line 17, in

raise e

zerodivisionerror: integer division or modulo by zero

integer division or modulo by zero

endraise關鍵字就是捕獲到異常,並丟擲,程式執行終止。但是finally還是會執行的。所以最後的print('llllllllllll')並沒有列印出來

前端學習Day18

一 3d的旋轉 增加了rotatez 和 rotate3d x,y,z,度數 注 x y z 它們是乙個向量值,0是不旋轉,1是旋轉 eg rotate3d 1,1,0,45deg 等價於 rotatex 45deg rotatey 45deg 二 3d的縮放 增加了 scalez 和 scale3...

寒假學習day18

今天學習了 布局的stretchcolumns 拉伸列 流程 在tablelayout中設定了四個按鈕,接著在最外層的tablelayout中新增以下屬性 android stretchcolumns 1 設定第二列為可拉伸列,讓該列填滿這一行所有的剩餘空間,如下 android id id tab...

Python菜鳥入門 day18程式設計學習

day01基礎知識 day02知識分類 day03運算子 day04數字與字串 day05列表 day06元組與字典 day07條件與迴圈 day08函式概念 day09資料結構 day10模組介紹 day11檔案操作 day12程式設計學習 day13程式設計學習 day14程式設計學習 day1...