当前位置:主页 > python教程 > Python用try except处理程序异常方法分析

Python用try except处理程序异常的三种方法总结

发布:2019-06-08 12:57:13 214


给大家整理一篇相关的编程文章,网友殳燕岚根据主题投稿了本篇教程内容,涉及到Python、try、except、程序、异常、Python用try except处理程序异常方法分析相关内容,已被179网友关注,内容中涉及的知识点可以在下方直接下载获取。

Python用try except处理程序异常方法分析

本文实例讲述了Python使用try except处理程序异常的三种常用方法。分享给大家供大家参考,具体如下:

如果你在写python程序时遇到异常后想进行如下处理的话,一般用try来处理异常,假设有下面的一段程序:

try:
  语句1
  语句2
  .
  .
  语句N
except .........:
  do something .......

但是你并不知道"语句1至语句N"在执行会出什么样的异常,但你还要做异常处理,且想把出现的异常打印出来,并不停止程序的运行,所以在"except ......"这句应怎样来写呢?

总结了一下3个方法:

方法一:捕获所有异常

try:
  a=b
  b=c
except Exception,e:
  print Exception,":",e

测试结果:

<type 'exceptions.Exception'> : name 'b' is not defined

方法二:采用traceback模块查看异常

#引入python中的traceback模块,跟踪错误
import traceback
try:
  a=b
  b=c
except:
  traceback.print_exc()

方法三:采用sys模块回溯最后的异常

#引入sys模块
import sys
try:
  a=b
  b=c
except:
  info=sys.exc_info()
  print info[0],":",info[1]

运行结果:

<type 'exceptions.NameError'> : name 'b' is not defined

但是,如果你还想把这些异常保存到一个日志文件中,来分析这些异常,那么请看下面的方法:

把 traceback.print_exc() 打印在屏幕上的信息保存到一个文本文件中

import traceback
try:
  a=b
  b=c
except:
  f=open("c:\log.txt",'a')
  traceback.print_exc(file=f)
  f.flush()
  f.close()

此时C盘根目录下生成一个log.txt文件,内容如下:

Traceback (most recent call last):
  File "C:\py\jb51PyDemo\src\Demo\test.py", line 3, in <module>
    a=b
NameError: name 'b' is not defined


参考资料

相关文章

  • Python中模块与包有相同名字的处理方法

    发布:2022-09-14

    给网友们整理关于Python的教程,这篇文章主要给大家介绍了在Python中模块与包有相同名字的处理方法,文中介绍的非常详细,对大家具有一定的参考学习价值,需要的朋友们下面来一起看看吧。


  • 图片去摩尔纹简述实现python代码示例

    发布:2023-03-25

    这篇文章主要为大家介绍了图片去摩尔纹简述实现的python代码示例,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪


  • python如何实现优先级队列(附代码)

    发布:2022-09-06

    给网友朋友们带来一篇关于python的教程,本篇文章给大家带来的内容是关于python如何实现优先级队列(附代码),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。


  • python看模块版本的小技巧

    发布:2020-03-25

    今天小编就为大家分享一篇python看某个模块的版本方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧


  • 详解如何利用Python处理异常值

    发布:2020-03-13

    数据挖掘工作中的第一步就是异常值检测,异常值的存在会影响实验结果。下面这篇文章主要给大家介绍了关于利用Python进行异常值分析的相关资料,文中通过示例代码介绍的非常详细,需要的


  • python如何通过函数名的字符串来调用这个函数

    python如何通过函数名的字符串来调用这个函数

    发布:2022-06-17

    给大家整理了关于python的教程,通过字符串名称调用函数,可使用eval()方法,它执行一个字符串表达式并返回表达式的值;locals()和 globals()两个内置函数,通过它们可以访问局部和全局变量。


  • 解析Python正则表达式匹配字符串中的http链接

    发布:2020-03-13

    今天小编就为大家分享一篇Python 正则表达式匹配字符串中的http链接方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧


  • 基于Python实现开发钉钉通知机器人

    发布:2023-04-18

    在项目协同工作或自动化流程完成时,我们需要用一定的手段通知自己或他人。Telegram 非常好用,几个步骤就能创建一个机器人,可惜在国内无法使用。所以本文就来开发一个钉钉通知机器人吧


网友讨论