質問: int(a) # 数字だったときの処理 except : # 文字列だったときの処理 pass ```
回答: 本家(英語)StackOverflowの Is there a built-in or more Pythonic way to try to parse a string to an integer に様々な回答がついていますが、質問中の用途であれば素直に例外機構の利用をおすすめします。`except`では値変換に失敗したことを表す `ValueError`例外 の明示が好ましいです。 ``` try : b = int(a) # 数字だったときの処理 except ValueError: # 文字列だったときの処理 pass ``` > > 何でも try and except に投げるのはよくないと聞きました。 > > > プログラム設計の一般論として、むやみに例外機構を用いるのが好ましくないことは合意します。 その一方、他プログラミング言語に比べるとPython例外機構は比較的カジュアルに使われるのも事実です。例えば反復的ループ処理を停止させるために `StopIteration`例外 が使われます。 外部記事「Pythonで例外を投げるときのベストプラクティス」も参考にどうぞ。