Python 入力値変換における例外処理 - 例外の種類と対策
以下のステートメントで,起こりうる例外はどれか選べ.
weight = int(input('体重をkgで入力:'))
考えられる例外
- 'int'に変換できない: 入力値が数値以外の文字列の場合、
ValueErrorが発生します。 - '0'が入力された: これは例外ではなく、正常な入力値です。
- 負の値入力された: これは例外ではなく、正常な入力値です。
- 入力に時間がかかりすぎた:
TimeoutErrorが発生する可能性があります。ただし、この例外はプログラム側でタイムアウト時間を設定した場合に発生します。
例外処理
上記の例外をキャッチし、適切な処理を行うには、try...except構文を使用します。
try:
weight = int(input('体重をkgで入力:'))
except ValueError:
print('数値を入力してください。')
except TimeoutError:
print('入力時間がかかりすぎました。')
補足
- Pythonでは、
int()関数を使用して文字列を整数型に変換します。 ValueErrorは、引数が不正な場合に発生します。TimeoutErrorは、操作がタイムアウトした場合に発生します。- 入力のタイムアウトを扱う場合は、
asyncioなどのライブラリを使用する必要があります。
まとめ
Pythonでの入力値変換では、ValueErrorやTimeoutErrorなどの例外が発生する可能性があります。これらの例外を適切に処理することで、プログラムの安定性を向上させることができます。
原文地址: https://www.cveoy.top/t/topic/hEwn 著作权归作者所有。请勿转载和采集!