添加上下文例外,我想上下文到一个例外是这样的:我怎样才能在Python
def process(vals):
for key in vals:
try:
do_something(vals[key])
except Exception as ex: # base class. Not sure what to expect.
raise # with context regarding the key that was being processed.
我发现是一反常态长篇大论的Python的方式。有没有比这更好的方法?
try:
do_something(vals[key])
except Exception as ex:
args = list(ex.args)
if len(args) > 1:
args[0] = "{}: {}".format(key, args[0])
ex.args = tuple(args)
raise # Will re-trhow ValueError with new args[0]
里面除了块'ex.args =(键)+ ex.args'有点清洁? –
@SteveAllison:你可以这样做,但是这个消息会以一个元组的形式出现,比如'ZeroDivisionError:('0:','除零')'。 – unutbu