Pythonでは、ユーザーからの入力を制御するためにinput()
関数を使用します。しかし、この関数はデフォルトで文字列を返すため、数値のみを受け取りたい場合は追加の処理が必要です。
数値のみを受け取る方法
Pythonで数値のみを受け取るための一般的な方法は、input()
関数で得られた文字列をint()
またはfloat()
関数で数値に変換することです。以下にその例を示します。
user_input = input("整数を入力してください: ")
try:
# 文字列を整数に変換
number = int(user_input)
print(f"入力された整数は: {number}")
except ValueError:
print("ValueError: 整数以外が入力されました。")
このコードでは、まずinput()
関数を使ってユーザーに整数の入力を求め、int()
関数でその文字列を整数に変換します。変換が成功すれば、その数値を表示します。もし整数以外の文字列が入力された場合は、ValueError
が発生し、それをexcept
ブロックでキャッチしてエラーメッセージを表示します。
入力制限の注意点
しかし、この方法には注意が必要です。int()
やfloat()
関数は、数値に変換できない文字列が与えられたときにValueError
を発生させます。したがって、ユーザーが数値以外の文字列を入力した場合、プログラムはエラーを発生させて停止します。
これを防ぐためには、try-except
文を使用してValueError
をキャッチし、適切なエラーメッセージを表示することが推奨されます。これにより、ユーザーが数値以外の文字列を入力した場合でも、プログラムは適切に対応できます。
以上がPythonで数値のみを受け取るinput()
関数の作り方になります。この方法を使えば、ユーザーからの入力をより厳密に制御することができます。.