当前位置: 首页 > news >正文

做家装图接单网站/学电脑培训班

做家装图接单网站,学电脑培训班,广告发布平台,建设项目公示网站本篇文章小编给大家分享一下使用Python将Exception异常错误堆栈信息写入日志文件代码及补充知识,对大家的学习有一定的帮助,小编觉得挺不错的,现在分享给大家供大家参考,有需要的小伙伴们可以来看看。假设需要把发生异常错误的信息…

本篇文章小编给大家分享一下使用Python将Exception异常错误堆栈信息写入日志文件代码及补充知识,对大家的学习有一定的帮助,小编觉得挺不错的,现在分享给大家供大家参考,有需要的小伙伴们可以来看看。

假设需要把发生异常错误的信息写入到log.txt日志文件中去:

import traceback

import logging

logging.basicConfig(filename='log.txt', level=logging.DEBUG,

format='%(asctime)s - %(levelname)s - %(message)s')

try:

raise Exception('发生异常错误信息')

except:

#方案一,自己定义一个文件,自己把错误堆栈信息写入文件。

#errorFile = open('log.txt', 'a')

#errorFile.write(traceback.format_exc())

#errorFile.close()

#方案二,使用Python标准日志管理维护工具。

logging.debug(traceback.format_exc())

补充知识:Python---异常处理、调用栈、异常记录、抛出错误

异常处理:

在python中,内置了一套错误处理机制:try:...except:...finally

语法:

try:

可能出现异常语句

except 错误类型1 as e:

异常处理

except 错误类型2 as e:

异常处理2

...

finally:

无论是否出错,都会执行的语句

PS:python的错误也是类,所有错误的类都继承自BaseException。

所以使用except时需注意,不但会捕获该类型的错误,还会将其子类错误一网打尽

调用栈:

若异常没有被捕获,则会一直往上抛,最后抛给解释器,解释器打印错误的堆栈信息,然后退出。

因此,查找错误的时候:

1、先看错误类型

2、从下往上找

如:

异常记录:

如果只使用异常捕获,结果只会打印错误类型,不会打印错误堆栈信息。如果不使用异常捕获,python解释器会打印错误类型及错误堆栈信息,但是程序也被结束了。使用异常记录就可以把错误类型和错误堆栈信息都打印出来,而且程序可以继续执行。

import logging

def foo(s):

return 10/int(s)

def bar(s)

return foo(s)*2

def mian():

try:

bar('0')

except Exception as e:

logging.exception(e)

main()

print("END")

抛出错误:

因为错误是class,捕获一个错误就是捕获到该class的一个实例,因此,错误并不是凭空产生的,而是有意创建并抛出的,pyhton的内置函数会抛出很多类型的错误,我们自己编写的函数也可以抛出错误。

如果要抛出错误,首先根据需要,可以定义一个错误的class,选择好继承关系,然后,用raise语句抛出一个错误的实例。

class FooError(valueError):

pass

def foo(s):

n = int(s)

if n == 0:

raise FooError("invalid value :%s"%s)

return 10/n

foo('0')

PS:只有在必要的时候才定义我们自己的错误类型,如果可以选择python已有的内置的错误类型,尽量使用python内置的错误类型。

常见的错误类型

- AttributeError 试图访问一个对象没有的属性

- IOError 输入/输出异常 无法打开文件

- IndentationError 语法错误,代码没有对齐

- keyError 访问的key字典中不存在

- NameError 使用一个还未赋值的对象的变量

- TypeError 传入对象类型与要求不合法

- ValueError 传入一个调用者不期望的值

http://www.jmfq.cn/news/4909357.html

相关文章:

  • 游学做的好的网站/pc网站优化排名软件
  • 网站建设的付款方式/合肥seo网站排名
  • 济南建设网站/百度信息流广告推广
  • 中国交通建设监理协会试验检测工作委员会网站/澳门seo推广
  • 政府网站建设的现状及问题分析/cpm广告联盟平台
  • 公司做网站属于什么费用/湖南企业竞价优化
  • 中山做网站/优化师助理
  • 苏州 手机网站/希爱力5mg效果真实经历
  • 网站建设技术哪些内容/营销网站制作
  • 中国哪家做网站的公司最大/长沙市最新疫情
  • 有效的网络推广/乐山网站seo
  • 打开国外网站很慢怎么办/推广系统
  • 事业单位网站方案/免费打广告平台有哪些
  • 南京企业网站制作哪家好/seo优化排名方法
  • 用CMS做网站的好处/盐城seo培训
  • 设计师一般用什么网站/网站开发流程有哪几个阶段
  • 网站的当前位置导航如何做/店铺运营
  • 洋县住房和城乡建设管理局网站/百度游戏风云榜
  • 江西省建设工程安全质量监督管理局网站/seo计费系统开发
  • 上海服装品牌网站建设/典型的口碑营销案例
  • 手机上怎么做网站/杭州关键词排名工具
  • 网站备案跟做哪个推广有关系吗/佛山快速排名seo
  • iis7配置asp网站/百度怎么打广告在首页
  • 视频网站源码下载/seo网站优化专员
  • 深圳做微网站/中国唯一没有疫情的地方
  • 自己做网站步骤 域名/广州网站seo推广
  • 做细胞激活的母液网站/百度竞价外包
  • 金华网站建设方案开发/西安整站优化
  • 怎么生成网站源代码/影视剪辑培训机构排名
  • 百合网 网站 开发/seo站长网怎么下载