Python-标准库(常用模块) .pdfVIP

  1. 1、本文档共8页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

Python-标准库(常⽤模块)

⼀.logging模块

logging翻译为⽇志记录

那问题是什么是⽇志?

⽇志实际上是⽇记的⼀种,⽤于记录某个时间点发⽣了什么事情,⽐如⼤学⽼师的教学⽇志,⼯作⽇志等

为什么要记录⽇志?

在实际⽣活中记录⽇志主要为了⽇后复查,

⽐如某个⼤学⽼师每天记录⾃⼰讲的什么内容,后⾯有学⽣某科成绩优异获奖了,校长想要奖励对应的⽼师,但由于每个⽼师教的班级都很多,并不⼀定记得是谁教的,这时候就可以查看教

学⽇志来获取需要的信息了

再⽐如,⼯⼚的⽣产⽇志,如果某个产品除了因为某个零件出现了故障,通过⽣成⽇志,可以找到与这个产品同批次的其他产品,进⾏返⼯,或是通过⽇志找到该零件的供应,商进⾏沟通解决!

程序中的⽇志

我们的程序开发完成后会被不同系统环境的⽤户下载使,期⽤间可能就会出现问题,直接把错误信息展⽰给⽤户看是没有任何意义,⽤的户看不懂也不会解决,那这时候就可以将⽤户执⾏的

所有操作,以及代码运⾏的过程,记录到⽇志中,程序员通过分析⽇志内容,可以快速的定位问题

综上:⽇志就是⽤来记录发⽣的事件的

⽇志并不会⽴即产⽣作⽤,⽽是当程序出现了问题时在去分析⽇志⽂件提取有⽤信息

什么是logging模块

logging模块是python提供的⽤于记录⽇志的模块

为什么需要logging

我们完全可以⾃⼰打开⽂件然后,⽇志写进去,但是这些操作重复且没有任何技术含量,所以python帮我们进⾏了封装,有了logging后我们在记录⽇志时只需要简单的调⽤接⼝即可,⾮常⽅

便!

⽇志级别

在开始记录⽇志前还需要明确,⽇志的级别

随着时间的推移,⽇志记录会⾮常多,成千上万⾏,如何快速找到需要的⽇志记录这就成了问题

解决的⽅案就是给⽇志划分级别

logging模块将⽇志分为了五个级别,从⾼到低分别是:

1.info常规信息

2.debug调试信息

3.warning警告信息

4.error错误信息

5.cretical严重错误

本质上他们使⽤数字来表⽰级别的,从⾼到低分别是10,20,30,40,50

logging模块的使⽤

#1.导⼊模块

importlogging

#2.输出⽇志

logging.info(info)

logging.debug(debug)

logging.warning(warning)

logging.error(error)

logging.critical(critical)

#输出WARNING:root:warning

#输出ERROR:root:error

#输出CRITICAL:root:critical

我们发现info和debug都没有输出,这是因为它们的级别不够,

默认情况下:

logging的最低显⽰级别为warning,对应的数值为30

⽇志被打印到了控制台

⽇志输出格式为:级别⽇志⽣成器名称⽇志消息

如何修改这写默认的⾏为呢?,这就需要我们⾃⼰来进⾏配置

⾃定义配置

importlogging

logging.basicConfig()

可⽤参数

filename:⽤指定的⽂件名创建FiledHandler(后边会具体讲解handler的概念),这样⽇志会被存储在指定的⽂件中。

filemode:⽂件打开⽅式,在指定了filename时使⽤这个参数,默认值为“a”还可指定为“w”。

format:指定handler使⽤的⽇志显⽰格式。

datefmt:指定⽇期时间格式。

level:设置rootlogger(后边会讲解具体概念)的⽇志级别

#案例:

logging.basicConfig(

filename=aaa.log,

filemode=at,

datefmt=%Y-%m-%d%H:%M:%S%p,

format=%(asctime)s-%(name)s-%(levelname)s-%(module)s:%(message)s,

level=10

)

格式化全部可⽤名称

%(name)s:Logger的名字,并⾮⽤户名,详细查看

%(levelno)s:数字形式的⽇志级别

%(levelname)s:⽂本形式的⽇志级别

文档评论(0)

150****0292 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档