gpt4 book ai didi

python - 记录和引发异常

转载 作者:行者123 更新时间:2023-12-03 07:38:40 26 4
gpt4 key购买 nike

我想保持一个可靠的日志系统运行,但也有必要引发异常。这段代码实现了我的目标,但它看起来很笨重,而且不是很 Pythonic。什么是更好的选择?

import logging

if not condition_met:
missing = set_one - set_two
logging.error('Missing keys: {}'.format(missing))
raise ValueError('Missing keys: {}'.format(missing))

最佳答案

此时您可以捕获异常并记录错误,因此如果发生另一个异常,您也可以记录它,并将异常传播到上游。

try:
# some code

if not condition_met:
missing = set_one - set_two
raise ValueError('Missing keys: {}'.format(missing))

except Exception as e: # or ValueError to narrow it down
logging.error(str(e))
raise # propagate the exception again

请注意,在不记录回溯的情况下记录异常会留下一些未完成的事情,特别是如果异常被上游捕获和处理。您很可能永远不会修复该特定错误。

关于python - 记录和引发异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52672268/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com