blind-except (BLE001)
源自 flake8-blind-except 代码检查器。
作用
检查捕获所有异常的 except
子句。这包括裸 except
,except BaseException
和 except Exception
。
为什么这不好?
过于宽泛的 except
子句可能导致意外行为,例如捕获 KeyboardInterrupt
或 SystemExit
异常,阻止用户退出程序。
不要捕获所有异常,而是只捕获预计会在 try
块中引发的异常。
示例
建议改为
重新引发的异常将不会被标记,因为预计它们会在其他地方被捕获。
通过 logging.exception()
或 logging.error()
并启用 exc_info
来记录的异常将不会被标记,因为这是传播异常追踪的常见模式。