下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
第Python常見報錯解決方案總結(jié)(新手拯救指南)目錄前言01縮進(jìn)錯誤(IndentationError)02Tab和空格混用(TabError)03語法錯誤(SyntaxError)04變量名錯誤(NameErro)05索引錯誤(IndexError)06鍵錯誤(KeyError)07類型錯誤(TypeError)08屬性錯誤(AttributeError)總結(jié)
前言
如果說寫代碼最害怕什么,那無疑是Bug。而對于新手來說,剛剛接觸編程,在享受寫代碼的成就感時,往往也會被各式各樣的Bug弄得暈頭轉(zhuǎn)向。今天,我們就做了一期Python常見報錯的分享,拯救你的代碼!
01縮進(jìn)錯誤(IndentationError)
在Python中,所有代碼都是通過正確的空格排列的。所以,無論是多出來空格,還是缺少空格,整個代碼都不會運(yùn)行,并且僅返回一個錯誤函數(shù)。
Python代碼遵循PEP8空白規(guī)范,每一級縮進(jìn)使用4個空格。
錯誤示例
a=1
ifab:
printa
修正
a=1
ifab:
printa
02Tab和空格混用(TabError)
此類報錯是由于同時使用制表符和空格進(jìn)行編碼導(dǎo)致的,tab鍵本質(zhì)上是制表符,而非縮進(jìn)符。由于不同文本編輯器中制表符代表的空格寬度不一,建議使用空格。
03語法錯誤(SyntaxError)
語法錯誤的原因包含下列三種:
無效語法(invalidsyntax)標(biāo)點符號遺漏,中英文符號混用,拼寫錯誤,變量名或者函數(shù)名使用了關(guān)鍵字。標(biāo)識符中有無效字符(invalidcharacterinidentifier)代碼中出現(xiàn)了無法識別的字符,檢查一下是否有多余字符或者中文字符。檢查到不完整的字符串(EOLwhilescanningstringlitera)很多情況下是由于字符串兩邊的引號不統(tǒng)一。
錯誤示例
print(hello,world)錯誤原因:逗號為中文逗號
報錯信息:SyntaxError:invalidcharacterinidentifier
result=(1024+(512*2)/128錯誤原因:圓括號沒有成對出現(xiàn)
報錯信息:SyntaxError:unexpectedEOFwhileparsing
ifname=="A"
print("hello")
錯誤原因:忘記在if/elif/else/while/for/def/class等語句末尾添加冒號
報錯信息:SyntaxError:invalidsyntax
04變量名錯誤(NameErro)
變量名錯誤是最普通也是最常會遇到的內(nèi)建報錯類型,經(jīng)常會出現(xiàn)在Python變量命名上,如果找不到變量就會引發(fā)NameError。關(guān)于變量名的規(guī)則,需要牢記以下幾條:
變量名只能包含字母、數(shù)字和下劃線,不可用數(shù)字開頭;變量名不能包含空格,但可使用下劃線來分隔其中的單詞;不要將Python關(guān)鍵字和函數(shù)名用作變量名,如print;變量名應(yīng)既簡短又具有描述性;慎用小寫字母l和大寫字母O,因為容易被錯看成數(shù)字1和0。
出現(xiàn)變量名錯誤,可以查看變量是否賦值,是否存在大小寫不統(tǒng)一或者變量名寫錯了的情況,找到后加以修正。
錯誤示例
message="Hello!"
print(mesage)
錯誤原因:變量名拼寫錯誤,誤將massage拼寫為masge
報錯信息:NameError:namemesageisnotdefined
05索引錯誤(IndexError)
索引是項目在數(shù)組或列表中的位置,當(dāng)我們嘗試從列表中訪問元素或從列表中不存在的索引中訪問元組時,就會發(fā)生這種異常。
例如,有一個包含10個元素的列表,索引在0到9之間,如果試圖訪問索引10或11或更多的元素,就會產(chǎn)生IndexError。
錯誤示例
a=[1,2,3]
print(a[3])
錯誤原因:列表a中不存在第4個索引,列表的索引從0開始編號
報錯信息:IndexError:stringindexoutofrange
06鍵錯誤(KeyError)
在讀取字典中的key和value時,如果key不存在,就會觸發(fā)KeyError錯誤。
錯誤示例
d={'a':1,'b':2}
print(d['f'])
錯誤原因:鍵f不存在
報錯信息:KeyError:f
07類型錯誤(TypeError)
在程序中使用不正確或不受支持的對象類型時,會引發(fā)該錯誤。如果嘗試調(diào)用不可調(diào)用的對象或通過非迭代標(biāo)識符進(jìn)行迭代,也會引發(fā)此錯誤。
錯誤示例
age=18
print("我的年齡是"+age)
錯誤原因:在使用+做拼接的時候,必須使用字符串,或者把數(shù)字用str()函數(shù)轉(zhuǎn)化成字符串
報錯信息:TypeError:canonlyconcatenatestr(notint)tostr
08屬性錯誤(AttributeError)
特性引用和賦值失敗時會引發(fā)屬性錯誤。
此類錯誤的原因是嘗試訪問未知的對象屬性,換句話說就是找不到對應(yīng)對象的屬性???/p>
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 中學(xué)教師職稱晉升制度
- 企業(yè)員工培訓(xùn)與素質(zhì)拓展訓(xùn)練制度
- 交通宣傳教育材料制作與發(fā)放制度
- 2026年工程監(jiān)理員工程質(zhì)量控制與安全管理試題
- 2026年全科醫(yī)師規(guī)范化培訓(xùn)結(jié)業(yè)考試醫(yī)學(xué)診斷技能題
- 鑄造培訓(xùn)課件范文
- 昆蟲標(biāo)本鑒定服務(wù)合同
- 古對今課件練習(xí)題
- 2026適應(yīng)氣候變化從業(yè)人員指南:自然環(huán)境風(fēng)險與解決方案-
- 2024年靈璧縣幼兒園教師招教考試備考題庫帶答案解析(奪冠)
- 2026年上半年眉山天府新區(qū)公開選調(diào)事業(yè)單位工作人員的參考題庫附答案
- 用電安全隱患檢測的新技術(shù)及應(yīng)用
- 新疆克州阿合奇縣2024-2025學(xué)年七年級上學(xué)期期末質(zhì)量檢測英語試卷(含答案及聽力原文無音頻)
- 《水庫泥沙淤積及影響評估技術(shù)規(guī)范》
- 2023-2024學(xué)年浙江省杭州市西湖區(qū)教科版五年級上冊期末考試科學(xué)試卷
- GB/T 7948-2024滑動軸承塑料軸套極限PV試驗方法
- DL∕T 1057-2023 自動跟蹤補(bǔ)償消弧線圈成套裝置技術(shù)條件
- AQ 2003-2018 軋鋼安全規(guī)程(正式版)
- 村委會指定監(jiān)護(hù)人證明書模板
- 送給業(yè)主禮物方案
- JJG 393-2018便攜式X、γ輻射周圍劑量當(dāng)量(率)儀和監(jiān)測儀
評論
0/150
提交評論