前提・実現したいこと
python3.7.3をIDLEを用いて開発しています(MacOS Mojave 10.14.6)。try-exceptの挙動がわかりません。
わかる方がいらっしゃいましたら、ご回答のほどよろしくお願い申し上げます。
●対象ソースコード
try: def flt(a): return float(a) except ValueError: print("You enter the Invalid number") flt_ret = flt("Hello") print(flt_ret)
●想定していた結果とその理由
想定していた結果:「You enter the Invalid number」が出力される。
理由:try節のfloat関数内で文字列をfloat型に変換できないという「ValueError」が発生するため、exceptに処理が移動すると考えるため。
発生している問題・エラーメッセージ
期待とは異なり、You enter the Invalid numberが出力されず、以下が出力されました。
flt_ret = flt("Hello") File "/Users/Test/python/test.py", line 258, in flt return float(a) ValueError: could not convert string to float: 'Hello'
該当のソースコード
Python3.7.3
試したこと
Googleで検索を行いましたが、該当のものを見つけることができませんでした。見落としかもしれません。
回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。