-1
整数以外の値を入力するとエラーが発生します。入力が押されたとか、または文字が入力されたとすると、ループを繰り返すことを望みます。私は、ユーザーに、私がelseステートメントに入れたエラーメッセージを与えて、入力をもう一度尋ねることに戻りたいと思います。ありがとうございました。整数入力がint()に対して不正な文字定数を与える理由
pizza_high = 0
while not repeat:
pizza_high = int(input('How many pizzas would you like to order:'))
if pizza_high != int:
repeat = True
else:
print('**ERROR** Please use whole numbers only!!')
pizza_high = 0
for x in range(0, pizza_high):
print('pizzas')
「5」が選択されている場合、これが正しく入力されます。
How many pizzas would you like to order: 5
pizzas
pizzas
pizzas
pizzas
pizzas
は、しかし、私は入力するか、それには2つの基本的な戦略があります
How many pizzas would you like to order: t
ValueError: invalid literal for int() with base 10: ';'
あなたのコードでも、動作することはできません。 'input'はその結果を整数や他の型に魔法のように変換しません。 – Evert
もちろん、数値ではない文字列を数値に変換しようとすると、(値)エラーが発生します。試してみてください。 – Evert
はい、私はそれを適切にコピーされませんでした。 int(input)が使われているときの出力は5で動作しますが、文字が選択されているとint(input)でエラーが返されます。私はエラーメッセージを出力し、ValueErrorをループしないようにします。 –