python中使用try exception时,打印完整出错代码追踪

这篇具有很好参考价值的文章主要介绍了python中使用try exception时,打印完整出错代码追踪。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

使用python程序时,不使用try exception时,虽然能打印完整的出错代码追踪,但是会发生异常崩溃导致程序卡死;启用try exception后,一般也只能打印异常类型和异常信息,无法直接获取到出错代码行和代码追踪信息,找到的解决办法有这么两个。

1.使用python自带的traceback模块

亲测python3.5和python3.8都自带了该模块,使用代码如下所示:

import traceback

def test(a):
    b =int(a)
    print(b)

print(dir(traceback))
try:
   test('10')
   test('sa')
except Exception as e:
   print(type(e))
   print(str(e))
   traceback.print_exc()
   traceback.print_exc(file=open('log.txt', 'a'))

2.直接使用exception的属性获取出错行文件和行数文章来源地址https://www.toymoban.com/news/detail-565199.html

def test(a):
    b =int(a)
    print(b)

try:
   test('10')
   test('sa')
except Exception as e:
   print(type(e))
   print(str(e))
   print('error file:{}'.format(e.__traceback__.tb_frame.f_globals["__file__"]))
   print('error line:{}'.format(e.__traceback__.tb_lineno))

到了这里,关于python中使用try exception时,打印完整出错代码追踪的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • python-文件与异常处理try-except、finally

    文件和异常处理在文件操作中是非常重要的,它可以帮助我们处理文件不存在或权限问题等异常情况。以下是关于文件和异常处理的全面讲解以及相应的代码示例: 1. 文件不存在和权限问题的异常处理: 文件不存在时,打开文件时会抛出 FileNotFoundError 异常。 权限问题包括无

    2024年02月09日
    浏览(33)
  • Python教学 | 有备无患!详解 Python 异常处理(try-except)

    更多详情请点击查看原文:Python教学 | 有备无患!详解 Python 异常处理(try-except) Python教学专栏,旨在为初学者提供系统、全面的Python编程学习体验。通过逐步讲解Python基础语言和编程逻辑,结合实操案例,让小白也能轻松搞懂Python! 点击此处查看往期Python教学内容 本文目

    2024年04月23日
    浏览(25)
  • [oeasy]python0139_尝试捕获异常_ try_except_traceback

    变量相加 整型数字变量可以相加 字符串变量也可以拼接 但是 字符串 和 整型数字 整型数字 和 字符串 不能相加 怎么办? 转格式 int(“1”) str(2) 可是 如果输入的苹果数量是 字符串\\\"abc\\\" int(“abc”)会发生什么??😱 先试试看 虽然我有了心理准备 但是 python 显然还没有准备好

    2023年04月25日
    浏览(31)
  • Python 异常处理 try-except,else,finally, with 语句的区别

    在日常编写程序时,难免会遇到错误,有的是由于疏忽造成的语法错误,有的是程序内部隐含逻辑问题造成的数据错误,还有的是程序运行时与系统的规则冲突造成的系统错误,等等。 总的来说,编写程序时遇到的错误可大致分为 2 类,分别为语法错误和运行时错误。 Pyth

    2023年04月08日
    浏览(31)
  • 3D 打印机 G 代码命令:完整列表和教程

    查看原文 了解 G 代码命令将开启 3D 打印的下一个层次。继续阅读以快速了解此代码的基础知识! 内容 它是什么? 3D 打印的重要命令 G0 G1:直线运动 G90 G91:绝对和相对定位 G28 和 G29:汽车家庭和床调平 M104、M109、M140 和 M190:设定温度 M106 M107:风扇控制 程序结构 阶段 1:初

    2024年02月03日
    浏览(23)
  • 使用Python实现的遗传算法 附完整代码

    遗传算法是模仿自然界生物进化机制发展起来的随机全局搜索和优化方法,它借鉴了达尔文的进化论和孟德尔的遗传学说。其本质是一种高效、并行、全局搜索的方法,它能在搜索过程中自动获取和积累有关搜索空间的知识,并自适应的控制搜索过程以求得最优解。遗传算法

    2024年02月02日
    浏览(36)
  • 使用Python爬取给定网页的所有链接(附完整代码)

    💂 个人网站:【海拥】【摸鱼游戏】【神级源码资源网】 🤟 前端学习课程:👉【28个案例趣学前端】【400个JS面试题】 💅 想寻找共同学习交流、摸鱼划水的小伙伴,请点击【摸鱼学习交流群】 此脚本从给定的网页中检索所有链接,并将其保存为 txt 文件。(文末有完整源

    2024年02月08日
    浏览(44)
  • Adobe打印机另存pdf出错生成log文件,打印失败

    用adobe打印机转pdf出错生成log文件,打印失败,log文件内容如下: 可能原因:打印文档字体问题,不更改文档内容,只需更改下PDF打印机设置即可。 在“设置”中,找到“设备和打印机”,找到“Adobe PDF”打印机,选择“管理”,如下图: 选择“打印首选项” 打开Adobe PDF打印

    2024年02月16日
    浏览(72)
  • 基于try-except模块的ZeroDivisionError: division by zero解决办法

    顾名思义,ZeroDivisionError: division by zero就是除数为0的情况,也可以理解为分母为0的情况。如1/0,2/0,3/0等,但有些场和我们可能需要分母位置的0值,例如我要比较分子与分母的大小,取得其中的相对小值作为一个变量,包括0。 对于上述情况,可以采用try-except异常捕获模块

    2024年02月06日
    浏览(31)
  • 不要在代码中随便使用try...catch了

    前言  📫 大家好,我是南木元元,热爱技术和分享,欢迎大家交流,一起学习进步!  🍅  个人主页: 南木元元 目录 背景 js中的try...catch try...catch运行机制 js的事件循环机制 try...catch无法捕获异步错误的原因 解决方法 结语 之前面某物的时候,遇到了一个有关try...catch的问

    2024年03月14日
    浏览(37)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包