今回は私がHackerRankの30 Days of Code をやっていたときに出てきた問題について書きたいと思います。
try except
問題の内容はインプットされたものが整数ならばそのまま出力し、文字列がインプットされればBad Stringと出力する。
qiita.rb
s = input()
try:
print(int(s))
except ValueError:
print("Bad String")
コードはこのようなシンプルなものになりました。
このコードの解説をすると、インプットで受け取ったものをtryでintに変換しようと試みる。もしそれが数字ならばもちろん変換することができるが、文字列であるとエラーとなってしまいます。exceptの後にそのエラー文を書いて、「このエラー文が出た時はこのような対処を行うと」と設定します。このようにtry exceptを使うことによってこの類の問題を解決することができます。