warning模块使用目的
和exception异常要求用户立刻进行处理不同,warning通常用于提示用户一些错误或者过时的用法。
case
scrapy源码中用到了继承了Warning类创建了一个提醒对象ScrapyDeprecationWarning,用于提醒过时的用户操作,在新版本可能会直接去除支持。
用户感知warnings
- python参数控制warning输出
python3 -W all example.py
python3 -W error example.py
python3 -W ignore example.py
- python脚本控制
import warnings
warnings.simplefilter('ignore')
warnings.simplefilter('always')
warnings.simplefilter('error')
开发输出warnings
import warnings
warnings.warn('warning message', OwnDeprecationWarning)
参考
- http://python3-cookbook.readthedocs.io/zh_CN/latest/c14/p11_issuing_warning_messages.html#
- http://blog.konghy.cn/2017/12/16/python-warnings/
- python doc