gpt4 book ai didi

python - 如何获取引发异常的方法?

转载 作者:太空宇宙 更新时间:2023-11-03 13:47:20 24 4
gpt4 key购买 nike

我有各种错误检查方法,它们主要只是值或类型检查,我想给用户一个修复它的机会,这样他们就不会丢失关于程序正在做什么的大量信息。

此时,我只有这个:

def foo(Option1, Option2): 
if Option1 >= 0 and Option <= 100 :
continue
else:
e = ('Hey this thing doesn\'t work')
raise ValueError(e)

然后在调用它的程序中,我有

except ValueError as e:
print(e)

我想传递问题所在的方法,以便我可以让用户有机会重试,例如在 print(e) 语句所在的位置之后使用提示或其他内容。有什么想法吗?

编辑:

基本上我希望我的 except 代码看起来像这样

except ValueError as e:
# print the error
# get what method the error was raised in
# method = the_method_from_above
# prompt user for new value
# send command to the method using the new value

最佳答案

您可以使用 traceback 模块提供有关异常的堆栈跟踪信息。

import traceback
...
try:
pass
except ValueError as e:
print("Error {0}".format(e))
traceback.print_exc()

关于python - 如何获取引发异常的方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16985882/

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