斜體樣式# 錯誤和異常
在敲**的過程中,難免出現錯誤,而錯誤的型別也是各種各樣的,當出錯了,python會返回錯誤的位置及型別
demo:
for i in
range(10
)print
(i)
out---->
for i in
range(10
)^syntaxerror: invalid syntax
python的語法分析器完成,檢測到錯誤所在檔案和行號,以向上箭頭標記錯誤位置,最後顯示錯誤型別,當程式檢測到乙個錯誤,直譯器就無法繼續執行下去,丟擲異常,終止程式。
系統根據不同的錯誤,丟擲不同的異常。
常見異常:
異常描述
nameerror
嘗試訪問乙個沒有申明的變數
zerodivisionerror
除數為 0
syntaxerror
語法錯誤
indexerror
索引超出序列範圍
keyerror
請求乙個不存在的關鍵字
filenotfounderror
未發現檔案(比如你要讀的檔案不存在)
attributeerror
嘗試訪問未知的物件屬性
modulenotfounderror
模組未發現
indentationerror
縮排typeerror
型別錯誤
程式一旦發生錯誤,程式就無法繼續執行。如果一定想要執行下去,就要做相關異常處理
try
: try_statements
except
[excpetiontype [
as identifier]
] except_statements
[else
: else_statements]
[finally
: finally_statements]
except子句
[as identifier]可以將捕捉到的異常指向乙個變數,然後,通過該變數獲得異常相關的資訊。
不帶任何異常型別使用except,將捕獲所有發生的異常。不推薦這麼使用,因為我們不能通過該程式識別出具體的異常資訊。
else子句
finally子句
demo:
try:.
..except exception1:..
.except exception2:..
.
try:.
..except
(exception1,exception2,..
.,):
as e:..
.
try:.
..except exception as e:..
.try:.
..except:.
..
除了系統丟擲的異常,我們可以用raise語句自己觸發異常、
raise
[exception[
,args[
,traceback]
]]
raise nameerror(
'sorry,error occurs'
)#traceback (most recent call last):
# file "f:/pycharm/summer/day_02.py", line 162, in
# raise nameerror('sorry,error occurs')
#nameerror: sorry,error occurs
assert condition
邏輯上相當於:
if
not conditon:
raise assertionerror(
)
為斷言新增乙個異常引數
assert expression [
, args]
li =[1
,2,3
]assert
len(li)
>=5,
'列表元素個數小於5'
#assertionerror: 列表元素個數小於5
資料探勘 day06
shoot射擊遊戲專案四 1.需求分析 a 將窗體的大小設定為常量 b 畫物件 想畫物件先獲取到,針對每乙個物件都能夠獲取到,獲取到的行為是共有的,設計到父類中 flyingobject每乙個物件得到的行為都是不一樣的,設計了乙個抽象方法 getlmage 在不同狀態下,得到不同的 狀態 設計到父類...
Day06 物件導向
方法回顧public static 方法型別 方法名 變數型別i 變數,變數型別ii 變數,區域性變數沒有變數不會有預設值。物件導向開發 類與物件public class student public void study 區域性變數與成員變數的區別 私有化private this的使用 this....
Day06 控制流程
pass 過 佔位 if10 10 print 123 while true pass break 終止當前迴圈 列印 1 10 遇到5就終止迴圈 i 1 while i 10 if i 5 break print i i 1 結果為 1 2 3 4 break 終止的是當前迴圈 continue ...