對于Python初學者,在編程過程中常犯的錯誤及解決辦法進行匯總和解決。勇哥希望編寫此文能幫到大家。
下邊是勇哥結合例子給大家現身說法:
第一例:縮進錯誤(IndentationError)
圖1
python對縮進很敏感,python用縮進來劃分語句塊,對于同一個語句塊,語句之間要對齊,否則就會出現上圖中的為對齊錯誤,這個也是新手犯的最多的一種錯誤。
第二例:缺少冒號(SyntaxError)
圖2
我們在編寫程序的過程中,一定要注意,if語句,for語句,while語句,函數以及else后的冒號不能少。冒號必須是英文狀態下的冒號。
第三例:索引超出錯誤(IndexError)
圖3
當發生錯誤的時候,系統報錯其實是在訴說對你的不滿,所以你要平息這個“不滿”,一定要看清人家報的錯誤類型,根據錯誤類型和發生錯誤的地方來排除我們的錯誤。上圖中的”line 2”,就在告訴你第2行附近有問題。
對于序列類型,在操作的時候,注意索引不要越界。或者在處理前做一個判讀 比如 if index<len(mylist):
第四例 使用不存在的字典鍵名(KeyError)
圖4
在操作字典或類字典的結構時,如果我們要讀取某個鍵對應的值或者要刪除該鍵對應的元素時,一定要在刪除之前判斷該鍵名在字典中是否存在,然后在進行相應的操作。檢測字典中鍵名是否存在可以使用:“鍵名 in 字典變量.keys()”來幫我們規避這種問題。所以用好 in運算符很重要。
第五例 未聲明錯誤(NameError)
圖5
python是一個動態語言,定義變量時不需要指定類型名稱,相對來說語法沒有C語言和C++語法嚴謹。不指定類型并不代表變量沒有類型,python中的變量是靠變量賦的值來推斷變量類型。所以上述案例,d沒有給值,所以造成解釋器執行時發現不知道如何給d分配內存空間。如果給變量d賦個值再使用就沒有上述問題了。
另外如果把內置函數名寫錯,也會引起上述錯誤,如下圖所示:
圖5-1
第六例 類型錯誤(TypeError)
圖6
python是一門強類型的語言,兩個值進行運算時,必須保證運算符左右兩邊值的類型要一致,就像人不能和長頸鹿比高低一樣,因為不是同一類,比較沒有意義。所以把上述b對應的實參改為整數類型就可以了。
第七例 模塊導入錯誤(ImportError)
圖7
上述程序執行到第一條語句就報錯停止運行了,因為系統沒有找到該模塊。如果報這樣的錯誤,首先我們要檢查我們導入的模塊名是否正確,在系統中是否真實存在;如果存在的話,可以把模塊的具體路徑添加到sys.path這個列表中即可。
上述是我給大家分享的新手容易犯的七個錯誤,當然除了這些還有很多。如果需要了解的更多,歡迎關注今日頭條上的“碼農阿勇”,一個致力于傳播和分享編程知識的平臺。