- 可以使用 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. 日志级别
级别 | 日志函数 | 描述 |
---|---|---|
DEBUG | logging.debug() | 最低级别。用于小细节。通常只有在诊断问题时,才会关心这些消息 |
INFO | logging.ifo() | 用于记录程序中一般事件的信息,或确认一切工作正常 |
WARNING | logging.warning() | 用于表示可能的问题,它不会阻止程序的工作,但将来可能会 |
ERROR | logging.error() | 用于记录错误,它导致程序做某事失败 |
CRITICAL | logging.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
文件中,避免日志信息打印整个屏幕。