ユーザが "done"と入力するまで繰り返し数値を読み取るプログラムを書く。 「完了」を入力すると、数値の合計、数、平均が印刷されます。ユーザーが数字以外を入力した場合は、tryとexceptを使用して間違いを検出し、エラーメッセージを出力して次の番号にスキップします。シンプルなpython反復練習。tryとexceptをつける。
これは私が持っているものです。
total = 0
count = 0
average = 0
while True:
number = input("Enter a number:")
if number == "done":
break
try:
total += numbers
count += 1
average = total/len(number)
except:
print ("Invalid input")
continue
print (total, count, average)
これを実行すると、何らかの理由で常に無効な入力が発生します。私の例外部分は間違っていなければなりません。
編集: これは私が今使っているものです。しかし、私は、数字以外の場合は試してみてください。
total = 0
count = 0
average = 0
while True:
number = input("Enter a number:")
if number == "done":
break
total += float(number)
count += 1
average = total/count
print (total, count, average)
私はそれを持っていると思いますか!
total = 0
count = 0
average = 0
while True:
number = input("Enter a number:")
try:
if number == "done":
break
total += float(number)
count += 1
average = total/count
except:
print ("Invalid input")
print ("total:", total, "count:", count, "average:", average)
時間がかかりそうだったら私は慌てるべきですか? これは私の最初のプログラミング言語ではありませんが、それはしばらくしています。あなたの入力を使用しようとすると
これはPython 2またはPython 3ですか? –
exceptブロックでキャッチする例外は何ですか? try-exceptを削除し、実際にどのようなエラーが発生したかを確認します。 – Daniel
ねえみんな。これはPython 3です。@ダニエル、私は今それを試してみましょう。私はそれが数字を入力していない場合、キャッチしようとしています。 –