我正在编写API并且我使用了一些托管属性,因为它们是从网络中检索的,因此可能会产生错误。
在getter-setter中我想检查API用户是否在属性get / set周围使用了try子句。
def getter_or_setter():
try:
network_operations()
except:
if called_inside_try():
raise
else:
log.error('error string')
答案 0 :(得分:4)
第一件事:我对你的问题没有答案,也不知道是否真的可以确定你的函数是否是从try块调用的:)
话虽如此,但我确信,这是一件奇怪的事情。您应该根据显式参数或其他调用函数的方式,将决定提出异常或无提示失败给调用者。
举个例子,我相信你应该考虑dict
如何处理丢失的密钥:
d['missing']
时,dict会引发KeyError
d.get('missing')
来避免例外。