python-调试

  • 可以使用 try catch 捕获异常
  • assert 关键字确保输入不存在异常
日志

不要使用 print() 打印消息,用 logging.debug(‘打印’) 代替 print() ,原因:

  • print() 很难删
  • print() 删错了会出很大的问题
import re
import logging
logging.basicConfig(level=logging.DEBUG, format=' %(asctime)s - %(levelname)s- %(message)s')
logging.debug('Start of program')
                    
phoneNumRegex = re.compile(r'\d\d\d-\d\d\d-\d{4}')
mo = phoneNumRegex.findall('My number is 415-555-4242.Another phone number is 123-456-7890')
logging.debug(mo)

logging.debug('End of program')

输出

2021-06-10 10:24:53,987 - DEBUG- Start of program
2021-06-10 10:24:53,988 - DEBUG- [‘415-555-4242’, ‘123-456-7890’]
2021-06-10 10:24:53,988 - DEBUG- End of program

禁止输出 debug 信息,只要加一句
logging.disable(logging.CRITICAL)

1. 日志级别
级别日志函数描述
DEBUGlogging.debug()最低级别。用于小细节。通常只有在诊断问题时,才会关心这些消息
INFOlogging.ifo()用于记录程序中一般事件的信息,或确认一切工作正常
WARNINGlogging.warning()用于表示可能的问题,它不会阻止程序的工作,但将来可能会
ERRORlogging.error()用于记录错误,它导致程序做某事失败
CRITICALlogging.critical()最高级别。用于表示致命的错误,它导致或将要导致程序完全停止工作

禁用日志:

  • 只要向logging.disable() 传入一个日志级别,它就会禁止该级别和更低级别的所有日志消息。
2. 将日志记录到文件

logging.basicConfig() 接受 filename 关键字参数

import logging
logging.basicConfig(filename='myProgramLog.txt', level=logging.DEBUG, format='%(asctime)s - %(levelname)s - %(message)s')

这样,就可以将日志信息写入到 myProgramLog.txt 文件中,避免日志信息打印整个屏幕。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值