Python Traceback(most recent call last)报错信息:示例解读
目录
- python Traceback(most recent call last)报错
- 示例代码
- 总结
Python Traceback(mophpst recent call last)报错
如果一个错误出现后没有被捕获(捕获是什么先不管,现在就理解为www.devze.com出现了一个错误),它就一直被往上抛,最终将被Python解释器捕获。
然后就在本该输出结果的地方打印一大串错误信息,然后程序退出。
示例代码
如下:
定义一个名为f1的函数 接收一个s,将s转化为整数类型后,函数返回1除以s的值
def f1(s): return 1 / int(s)
定义一个名为f2的函数 调用函数f1(),返回f1()返回值+1
def f2(s): return f1(s)+1
定义一个名为f3的函数 调用函数f2(),返回f2()返回值+1
def f3(s): return f2(s)+1
调用f3函数
f3(‘0')
示例代码执行后结果如下:
D:\Anaconda3\python.exe D:/生活学习日常记录/PycharmProjects/test/main.py
Traceback (most recent call last):File “D:/生活学习日常记录/PycharmProjects/test/main.py&rdqu编程o;, line 20, inf3(‘0’)File “D:/生活学习日常记录/PycharmProjects/test/main.py”, line 16, in f3return f2(s)+1File “D:/生活学习日常记录/PycharmProjects/test/main.py”, line 10, in f2return f1(s)+1File “D:/生活学习日常记录/PycharmProjects/test/main.py”, line 4, in f1return 1 / int(s)ZeroDivisionError: division by zeroProcess finished with exit code 1
解读错误信息就可以定位错误:
解释器在"D:\Anaconda3\python.exe" 执行的程序在"XXX.py"
D:\Anaconda3\python.exe D:/生活学习日常记录/PycharmProjects/test/main.py
错误的跟踪信息
Traceback (most recent call last):
错误出现在文件"XXX.py",第20行代码,错误来源于此执行模块:
File “D:/生活学习日常记录/PycharmProjects/test/main.py”, line 20, in
f3(‘0’) # 出错语句为f3(‘0’)
f3(‘0’)是导致报错的“直接原因”语句 编程错误出现在文件"XXX.py",第16行代码,错误来源于函数f3():
File “D:/生活学习日常记录/PycharmProjects/test/main.py”, line 16, in f3
return f2(s)+1 # 出错语句为return f2(s)+1
错误出现在文件"XXX.py",第10行代码,错误来源于函数f2():
File “D:/生活学习日常记录/PycharmProjects/test/main.py”, line 10, in f2
return f1(s)+1 # 出错语句为return f1(s)+1
错误出现在文件"XXX.py",第4行代码,错误来源于函数f1():
File “D:/生活学习日常记录/PycharmProjects/test/main.py”, line 4, in f1
return 1 / int(s) # 出错语句为return 1 / int(s)
return 1 / int(s)是导致报错的“根本原因”语句 错误类型是:除以零
ZeroDivisionError: divisionandroid by zero
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程客栈(www.devze.com)。
精彩评论