0

整数でなければならないので、入力を検証しようとしています。入力が特定の範囲内にある必要があるように入力を検証しましたが、たとえば文字「b」を入力すると、「ValueError:invalid literl for int() with base 10」というエラーが表示されます。値が整数でない場合、else セクションに同じメッセージが表示されるようにします。私はしばらくネットを検索してきましたが、入力を検証する方法がわからないため、整数でなければなりません。

Minutes=int(input("How long do you want the interval between each stretch to be?\nIndicate a number in minutes between 5 and 60\n\nAfter the minutes specified, a window with suggested stretches will appear\n--> "))

y=1 ながら y==1:

if Minutes in range (4,61):
    TimeMinute (Minutes) #(Minutes needs to be multiplied by 60 to make it into minutes) Minutes is currently in the unit of seconds
    y=0
else:
    Minutes=int(input ("Error. You need to enter a number between 5 and 60.\nHow long do you want the interval between each stretch to be?\nIndicate a number in minutes between 5 and 60\nAfter the minutes specified, a window with suggested stretches will appear\n-->  "))
4

1 に答える 1

0

最初にユーザー入力を取得してから、それを整数として解析してみてください。失敗した場合 ( が発生する場合ValueError) はエラー メッセージを出力し、有効な整数の場合は範囲​​をチェックして、必要なことを行います。

value = input('Enter minutes :')
try:
    value = int(value)
    if 4 < value < 61:
       # Do your stuff
    else:
       print('Error value must be in range: 5-60')
except ValueError:
   print('The value you entered is not a valid integer value')
于 2013-08-14T10:00:29.640 に答える