Tôi muốn theo dõi các ngoại lệ bên trong từ điển và trả lại như cũ. Tuy nhiên khi tôi làm như vậy, cuối cùng khối cho tôi một từ điển trống. Logic khá nhiều công trình cho vô hướng. Ai đó có thể giải thích hành vi được không.Tại sao trở lại bên trong cuối cùng cho từ điển trống?
Trong bối cảnh vô hướng:
def test():
temp = 1
try:
raise ValueError("sdfs")
except:
temp = 2
finally:
temp = temp + 3
return temp
test()
5
Với từ điển:
def test():
temp = dict()
try:
raise ValueError("something")
except Exception as error:
print("error is :{}".format(error))
temp['except'] = "something" + error
finally:
return temp
test()
error is : something
{}
đâu là mã mà in ra kết quả cuối cùng –
Lưu ý rằng? Python không có khái niệm 'ngữ cảnh vô hướng'. Bạn đang nghĩ đến Perl ở đó, có lẽ là –
vâng ... bạn có bối cảnh mặc dù :) – saz01