91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Python中怎么處理常見報錯問題

發布時間:2022-03-04 10:11:29 來源:億速云 閱讀:174 作者:小新 欄目:開發技術

這篇文章主要介紹Python中怎么處理常見報錯問題,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!

1.首先是常見的語法錯誤。
2.然后是基礎語法中的常見異常。
3.最后是操作文件過程中的常見異常,這部分也是重難點知識。

這是我們在終端比較常見的報錯信息:

Python中怎么處理常見報錯問題

 按照 Python 官方文檔的定義,我們在終端見到的“錯誤消息”至少可以被分為兩類:語法錯誤(syntax errors)和異常(exceptions) 。

語法錯誤(syntax errors)是初學者最容易犯的錯誤,簡單來說就是代碼不符合 Python 的基本語法規范而導致程序出了問題。 

當你的代碼完全符合 Python 的語法規范后,就該嘗試運行程序了。但在程序運行過程中,還是有可能會發生問題,我們把這類問題稱為異常(exceptions)。

比如兩種常見的語法錯誤 SyntaxError 和 IndentationError 以及它們產生的原因和相應的解決辦法。

首先我們來看看 SyntaxError 。

第一種:SyntaxError: invalid syntax(無效語法),這是語法錯誤中最常見的一種了,通常是由下面幾種情況引起的:

一、遺漏了標點符號。
二、關鍵字拼寫錯誤或遺漏。
三、變量名或函數名使用了關鍵字。

第二種:SyntaxError: invalid character in identifier(標識符中有無效字符),這種錯誤一般是由于代碼里使用了大量中文符號,比如中文括號,中文逗號,中文冒號和中文引號。這有可能是你在寫代碼時頻繁地切換中英文輸入法所造成的。

第三種:SyntaxError: EOL while scanning string literal(檢查到不完整的字符串),這種情況通常是因為遺漏了字符串兩邊的引號,或者混用了引號(即字符串兩邊的引號不統一)。解決辦法也很簡單,仔細檢查字符串兩頭的引號是否有遺漏,而且需要記住,單引號和單引號匹配,雙引號和雙引號匹配,三引號和三引號匹配。

圖片總結一下:

Python中怎么處理常見報錯問題

 第二個要介紹的常見語法錯誤就是 IndentationError,即縮進錯誤。 在 Python 中,冒號下面的縮進會幫助程序區分代碼之間的層次,這些不同的層次代表了代碼運行的邏輯及先后順序。但如果在需要縮進的語句下面沒有使用正確的縮進層級,甚至沒有使用縮進,程序就會報錯。

比如兩種常見的縮進錯誤:

第一種:IndentationError: expected an indented block(需要縮進的代碼塊),這種多半是由于某些需要縮進的地方沒有縮進導致的,修復這種縮進錯誤的方法也十分簡單 —— 對癥下藥,理清代碼的運行順序與邏輯,在應該縮進的地方(例如:if 條件判斷,for 循環,while 循環,def 函數定義,class 類的創建)加入縮進即可。

第二種:IndentationError: unindent does not match any outer indentation level(縮進內容不匹配任何一個層級),這種主要是因為某一行的縮進沒有和其他位置對齊使得程序無法找到匹配的代碼塊導致的,解決辦法就需要我們理清代碼塊的層級并將縮進對齊。

總結如下:

Python中怎么處理常見報錯問題

 接著我們來看看基礎語法中常見的異常,第一個要介紹的是基礎語法中常見的異常 TypeError,即類型錯誤。 

區分異常和錯誤的方法就需要我們去觀察終端的提示信息,一般情況下,異常的“錯誤消息”會顯示Traceback (most recent call last),而語法錯誤就不會顯示。 

下面列舉三種較為常見的類型錯誤:

第一種:TypeError: unsupported operand type(s) for …(不支持的運算)

第二種:TypeError: can only concatenate str (not "int") to str (只能用字符串拼接字符串)

第三種:TypeError: 'xxx' object is not iterable(對象不可被迭代)

具體的解決方法可以結合下圖:

Python中怎么處理常見報錯問題

一句話總結:為了避免類型錯誤,你需要確定自己使用的數據類型是什么(可以借助 type()),需要進行的操作是什么,從而去確認是否需要使用函數來進行類型轉換。

第二種異常是IndexError ,這個異常,和列表取值有關。 出現頻率較高的索引錯誤是 IndexError: list index out of range(索引超出了范圍),在列表中使用索引取值時,一定要確保索引在正確的范圍區間內。

最后,我們講了幾種操作文件過程中的常見異常。第一種是 ModuleNotFoundError 未找到模塊錯誤,是一種有關模塊的異常,解決這個異常的方法十分簡單,只要你在導入模塊時仔細檢查模塊的拼寫是否正確即可。

第二種是 AttributeError 屬性錯誤 ,為了避免這種異常,我們在使用模塊中的方法時,需要先檢查拼寫是否正確,確認拼寫無誤后,再檢查模塊或庫中是否存在該方法或屬性。

第三種是 FileNotFoundError 文件找不到的錯誤,為了避免這種異常,我們需要按照路徑找到對應的文件或文件夾,檢查文件或文件夾名是否正確。

最后一種是 UnicodeDecodeError 即編碼解碼錯誤,它也是 open() 函數的另一個參數 encoding 會引發的異常,之前課程講的寫法是 encoding = 'utf-8',這是因為,大部分工作場景的文件編碼格式都是 'utf-8'。但如果你需要使用別人分享的代碼時,很有可能會因為你們之間使用了不同的編碼格式而引發異常。

以后遇到這樣的異常,有兩種解決方法:

第一種,先利用 VSCode 等軟件去查看文件的編碼格式,然后再將文件的編碼格式修改為你在代碼中寫的編碼格式即可。

第二種,還是先在 VSCode 里面查看文件的編碼格式,然后將代碼中的 encoding 參數改為該文件的編碼格式即可。

總結如下:

Python中怎么處理常見報錯問題

 而實際上我們在寫代碼的過程中可能遇到的錯誤遠不止這些,課程也無法一一全部講到,所以大家需要培養的是這種自己發現錯誤和解決錯誤的能力,這就需要我們不斷的嘗試以及學會到百度上搜索查閱資料來積累經驗了。

以上是“Python中怎么處理常見報錯問題”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

阿拉善盟| 红原县| 建平县| 北京市| 乌拉特中旗| 陈巴尔虎旗| 成武县| 太仓市| 武安市| 隆化县| 承德市| 修文县| 厦门市| 武强县| 陆丰市| 邻水| 广安市| 黑龙江省| 应城市| 东方市| 星座| 澳门| 新竹市| 巴中市| 乐山市| 平潭县| 元朗区| 洛宁县| 塘沽区| 丰顺县| 阿图什市| 布拖县| 正镶白旗| 布尔津县| 临桂县| 辽宁省| 华蓥市| 阿城市| 青阳县| 凤凰县| 元朗区|