Debug的能力是成為一位良好程式設計師非常基礎之技能,此技能必學習演算法或資料結構知識更加重要。Debug的過程其實分為兩個步驟,包含理解Python錯誤訊息以及提問程式相關問題。
num1=10
num2=0
def f1():
print("start of f1 function")
f2()
def f2():
print("start of f2 function")
f3()
def f3():
print("start of f3 function")
num1/num2
f1()
traceback內容會顯現造成程式死掉的每一個相關框架摘要,並且traceback內容只會顯示含有引發例外的函式呼叫內容。最後面的訊息為導致無法處理例外所在的行數、函式名稱以及例外訊息。
但是有時候traceback內容可以指出問題出在哪裡,但是卻不一定為錯誤實際發生所在位置,如下為例。
print("Hello World"
print("My name is Wendy.")
因此透過網路搜尋錯誤訊息來解決bug成為重要技能。在搜尋訊息時可以左右加上引號並在前面加上python字眼,可以縮小且精確查詢。
明天會繼續談到程式問題應該要如何提問較正確。