我有以下 try/except 块。由于 except 块有它自己的return语句,因此在这种情况下我有 3 种可能的方式,如果块成功,我可以放置return语句。try是否有约定或最佳实践?
版本 1:
try:
self.validate()
self.perform_creation()
except UserException as e:
show_error(e.message)
return super().render(request)
return redirect(self.next) # Return here
版本 2:
try:
self.validate()
self.perform_creation()
return redirect(self.next) # Return here
except UserException as e:
show_error(e.message)
return super().render(request)
版本 3:
try:
self.validate()
self.perform_creation()
except UserException as e:
show_error(e.message)
return super().render(request)
else:
return redirect(self.next) # Return here