我应该总是在`except`语句中指定一个异常类型吗?

我应该总是在`except`语句中指定一个异常类型吗?

使用PyCharm IDE时,except:无异常类型的使用会触发IDE提醒此异常子句Too broad

我应该忽略这个建议吗?或者是Pythonic总是具体的异常类型?


繁花如伊
浏览 941回答 3
3回答

慕娘9325324

你不应该忽视翻译给你的建议。从PEP-8样式指南Python:捕获异常时,请尽可能提及特定异常,而不是使用bare except子句。例如,使用: try:      import platform_specific_module   except ImportError:      platform_specific_module = None一个裸的except:子句将捕获SystemExit和KeyboardInterrupt异常,这使得用Control-C中断程序变得更加困难,并且可以掩盖其他问题。如果你想捕获所有发出程序错误信号的异常,请使用除Exception :(裸除了除了BaseException之外)。一个好的经验法则是将裸“除”子句的使用限制为两种情况:如果异常处理程序将打印出来或记录回溯; 至少用户会意识到发生了错误。如果代码需要做一些清理工作,但随后让异常向上传播并加注。尝试...终于可以更好地处理这种情况。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python