Ruby equivalent for Python's "try"?
Use this as an example:
begin # "try" block
puts 'I am before the raise.'
raise 'An error has occurred.' # optionally: `raise Exception, "message"`
puts 'I am after the raise.' # won't be executed
rescue # optionally: `rescue Exception => ex`
puts 'I am rescued.'
ensure # will always get executed
puts 'Always gets executed.'
end
The equivalent code in Python would be:
try: # try block
print('I am before the raise.')
raise Exception('An error has occurred.') # throw an exception
print('I am after the raise.') # won't be executed
except: # optionally: `except Exception as ex:`
print('I am rescued.')
finally: # will always get executed
print('Always gets executed.')
begin
some_code
rescue
handle_error
ensure
this_code_is_always_executed
end
Details: http://crodrigues.com/try-catch-finally-equivalent-in-ruby/