python中異常報錯處理方法匯總
首先異常是什么,異常白話解釋就是不正常,程序里面一般是指程序員輸入的格式不規(guī)范,或者需求的參數(shù)類型不對應,不全等等。
Python中異常是指程序中的例外,違例情況。異常機制是指程序出現(xiàn)錯誤后,程序的處理方法。當出現(xiàn)錯誤后,程序的執(zhí)行流程發(fā)生改變,程序的控制權轉移到異常處理。
打個比方很多公司年終送蘋果筆記本,你程序話思維以為是(MAC)電腦筆記本,結果給你個蘋果+筆記本。。。首先類型不對,數(shù)量也不對。
先來看幾個常見的報錯如下:
NameError 命名錯誤 原因是: name 'a' is not defined 命名a還未定義 簡單來說就是程序不知道a帶表誰 如果a=1 那程序就懂了 a代表1
所以以后碰到這類代碼只用找到錯誤未定義的a給它賦相應的值即可解決了。
好了我們繼續(xù)看下一個如下:
IndexError 索引錯誤(也有叫邊界錯誤) 原因: list index out of range 列表的索引已經(jīng)超出其范圍導致
列表a只有2個參數(shù),下標是0,1(不懂去看列表基礎),而我要打印下標2位置的值這時候就超過它的標準不在范圍內(nèi)
打個比方坐公交車1米2以下兒童免費,結果來個1米5上來就不能免費因為你超過規(guī)定高度
來我們繼續(xù)continue:
KeyError 鍵值錯誤 一般出現(xiàn)在字典中原因是:字典a中沒有height這個鍵值,name已經(jīng)打印出來因為a里面已經(jīng)存在
字典是由dict = { key : value }一一對應組成,打個比方就理解了dict好比一家公司company由員工key類似標識
value等于員工的屬性(崗位,工資,對應個人信息等)這報錯就等于去一個公司找某某某,結果人家公司說沒這個人一樣。
繼續(xù)繼續(xù)continue:
ImportError 導入錯誤 原因:No module named nothing 沒有模塊名叫nothing的方法
一般這錯誤會發(fā)生在拼寫錯誤或者大小寫,沒有安裝模塊方法,沒有正確引用位置(模塊更新版本可能會改方法名或新增文件夾)
這時候我推薦你去python2.x或者python3.x目錄下\Lib\site-packages文件里面找找看(第三方庫模塊都會在這幾種存放)
繼續(xù)繼續(xù)continue:
IOError 輸入輸出錯誤 原因:No such file or directory : 'test' 沒有在目錄中找到叫test文件
這個容易理解,無中生有。程序說:你坑誰???
繼續(xù)繼續(xù)continue:
AttributeError 成員屬性錯誤 原因:一切皆對象 然而字典a對象內(nèi)沒有一個內(nèi)置函數(shù)也就是內(nèi)置方法叫sort排序,大家都知道字典是無序的,list列表才有這方法
當你定義一個變量不知道能用什么內(nèi)置函數(shù)和方法時可以這樣用dir查看以下當前可以用那些方法。
SyntaxError 語法錯誤 :無效語法 a沒有定義所以沒辦法讓它轉換為整型 這也是常見錯誤之一
來接著看下一個:
TypeError 類型錯誤:不知道的哈希類型 list列表 (后面為個人理解) 但是元組卻可以放進去有點費解,字典的key一般是單元素或唯一標識,
恰好元組不可變的序列也是唯一標識,所以元組可以放入key中。打比方就如你是世界上唯一的key,沒有和你完全一樣的存在。
以上是經(jīng)常會遇到的問題報錯,大家學會了就可以自己思考解決方法了這樣也利于大家提高自己的水平。
相關文章
Pytorch中torch.argmax()函數(shù)使用及說明
這篇文章主要介紹了Pytorch中torch.argmax()函數(shù)使用及說明,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2023-01-01手把手教你從PyCharm安裝到激活(最新激活碼),親測有效可激活至2089年
最近很多網(wǎng)友找小編反映PyCharm激活碼失效了,原來的已經(jīng)不能用了。浪費了半天時間終于找到一個可以使用的了,支持最新JetBrains全系列產(chǎn)品(Pycharm 2020.2.x,Intellij idea 2020.2.x,WebStorm 2020.2.x)。,需要的朋友可以參考下2020-10-10