Python?Traceback(most?recent?call?last)報(bào)錯(cuò)信息:示例解讀
Python Traceback(most recent call last)報(bào)錯(cuò)
如果一個(gè)錯(cuò)誤出現(xiàn)后沒有被捕獲(捕獲是什么先不管,現(xiàn)在就理解為出現(xiàn)了一個(gè)錯(cuò)誤),它就一直被往上拋,最終將被Python解釋器捕獲。
然后就在本該輸出結(jié)果的地方打印一大串錯(cuò)誤信息,然后程序退出。
示例代碼
如下:
定義一個(gè)名為f1的函數(shù) 接收一個(gè)s,將s轉(zhuǎn)化為整數(shù)類型后,函數(shù)返回1除以s的值
def f1(s): return 1 / int(s)
定義一個(gè)名為f2的函數(shù) 調(diào)用函數(shù)f1(),返回f1()返回值+1
def f2(s): return f1(s)+1
定義一個(gè)名為f3的函數(shù) 調(diào)用函數(shù)f2(),返回f2()返回值+1
def f3(s): return f2(s)+1
調(diào)用f3函數(shù)
f3(‘0')
示例代碼執(zhí)行后結(jié)果如下:
D:\Anaconda3\python.exe D:/生活學(xué)習(xí)日常記錄/PycharmProjects/test/main.py
Traceback (most recent call last):
File “D:/生活學(xué)習(xí)日常記錄/PycharmProjects/test/main.py”, line 20, in
f3(‘0’)
File “D:/生活學(xué)習(xí)日常記錄/PycharmProjects/test/main.py”, line 16, in f3
return f2(s)+1
File “D:/生活學(xué)習(xí)日常記錄/PycharmProjects/test/main.py”, line 10, in f2
return f1(s)+1
File “D:/生活學(xué)習(xí)日常記錄/PycharmProjects/test/main.py”, line 4, in f1
return 1 / int(s)
ZeroDivisionError: division by zeroProcess finished with exit code 1
解讀錯(cuò)誤信息就可以定位錯(cuò)誤:
解釋器在"D:\Anaconda3\python.exe" 執(zhí)行的程序在"XXX.py"
D:\Anaconda3\python.exe D:/生活學(xué)習(xí)日常記錄/PycharmProjects/test/main.py
錯(cuò)誤的跟蹤信息
Traceback (most recent call last):
錯(cuò)誤出現(xiàn)在文件"XXX.py",第20行代碼,錯(cuò)誤來源于此執(zhí)行模塊:
File “D:/生活學(xué)習(xí)日常記錄/PycharmProjects/test/main.py”, line 20, in
f3(‘0’) # 出錯(cuò)語句為f3(‘0’)
f3(‘0’)是導(dǎo)致報(bào)錯(cuò)的“直接原因”語句 錯(cuò)誤出現(xiàn)在文件"XXX.py",第16行代碼,錯(cuò)誤來源于函數(shù)f3():
File “D:/生活學(xué)習(xí)日常記錄/PycharmProjects/test/main.py”, line 16, in f3
return f2(s)+1 # 出錯(cuò)語句為return f2(s)+1
錯(cuò)誤出現(xiàn)在文件"XXX.py",第10行代碼,錯(cuò)誤來源于函數(shù)f2():
File “D:/生活學(xué)習(xí)日常記錄/PycharmProjects/test/main.py”, line 10, in f2
return f1(s)+1 # 出錯(cuò)語句為return f1(s)+1
錯(cuò)誤出現(xiàn)在文件"XXX.py",第4行代碼,錯(cuò)誤來源于函數(shù)f1():
File “D:/生活學(xué)習(xí)日常記錄/PycharmProjects/test/main.py”, line 4, in f1
return 1 / int(s) # 出錯(cuò)語句為return 1 / int(s)
return 1 / int(s)是導(dǎo)致報(bào)錯(cuò)的“根本原因”語句 錯(cuò)誤類型是:除以零
ZeroDivisionError: division by zero
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Python?threading中l(wèi)ock的使用詳解
Lock類是threading中用于鎖定當(dāng)前線程的鎖定類,本文給大家介紹了Python?threading中l(wèi)ock的使用,需要的朋友可以參考下2022-11-11
python 使用paramiko模塊進(jìn)行封裝,遠(yuǎn)程操作linux主機(jī)的示例代碼
這篇文章主要介紹了python 使用paramiko模塊進(jìn)行封裝,遠(yuǎn)程操作linux主機(jī)的示例代碼,幫助大家更好的理解和使用python,感興趣的朋友可以了解下2020-12-12
python實(shí)現(xiàn)智能語音天氣預(yù)報(bào)
今天小編就為大家分享一篇python實(shí)現(xiàn)智能語音天氣預(yù)報(bào),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2019-12-12
python logging 日志的級(jí)別調(diào)整方式
今天小編就為大家分享一篇python logging 日志的級(jí)別調(diào)整方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2020-02-02
Python實(shí)現(xiàn)快速掃描目標(biāo)主機(jī)的開放端口和服務(wù)
這篇文章主要為大家詳細(xì)介紹了如何使用Python編寫一個(gè)功能強(qiáng)大的端口掃描器腳本,實(shí)現(xiàn)快速掃描目標(biāo)主機(jī)的開放端口和服務(wù),感興趣的小伙伴可以了解下2025-12-12
python在Windows下安裝setuptools(easy_install工具)步驟詳解
這篇文章主要介紹了python在Windows下安裝setuptools(easy_install工具)步驟,簡(jiǎn)單介紹了setuptools并分析了其安裝步驟與所涉及的相關(guān)軟件,需要的朋友可以參考下2016-07-07

