Pythonで数字が受け付けられない場合の解決策
Pythonでは数値の無効はたいてい文字列を数値に変換できない場合をさします。解決策はケースに応じて異なります。
- 数字か判定
num_str = input("请输入一个数字:")
if num_str.isdigit():
num = int(num_str)
print("输入的数字是:", num)
else:
print("输入的不是一个有效的数字")
- try-except
- Raised when a function or operation is unable to convert an object into a desired type.
num_str = input("请输入一个数字:")
try:
num = int(num_str)
print("输入的数字是:", num)
except ValueError:
print("输入的不是一个有效的数字")
これにより、入力された値が有効な数値であるか無効な文字であるかに関係なく、プログラムは正常に動作し、無効な数値の場合には適切なプロンプトが表示されます。
念のため、これらは不正な数値の一部のみを処理できます。たとえば、非数値文字を含む文字列を入力した場合などです。状況によっては、より複雑な処理方法が必要になる場合があります。