1. ホーム
  2. python

[解決済み] Pythonの "try "に相当するのはRuby?

2022-03-02 20:46:08

質問

PythonのコードをRubyに変換しようとしています。Rubyで try 文はPythonのものですか?

どのように解決するのですか?

例として、こちらをご覧ください。

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 

Pythonで同等のコードを書くと、次のようになります。

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.')