ユーザーが入力用に数字以外を入力した場合にコードがクラッシュしないようにする方法を知りたいです。私のelseステートメントでカバーできると思っていましたが、エラーが発生しました。
トレースバック (最新の最後の呼び出し): ファイル "C:/Python33/Skechers.py"、22 行目、run_prog = input() ファイル ""、1 行目、NameError: 名前 's' が定義されていません
この例では、文字「s」を入力しました。
以下は、問題を引き起こすコードの一部です。文字や記号を指定しない限り、プログラムは問題なく動作します。
可能であれば、クラッシュする代わりに「無効な入力」を出力したい。
別の elif ステートメントと isalpha 関数に関係するトリックはありますか?
while times_run == 0:
print("Would you like to run the calculation?")
print("Press 1 for YES.")
print("Press 2 for NO.")
run_prog = input()
if run_prog == 1:
total()
times_run = 1
elif run_prog == 2:
exit()
else:
print ("Invalid input")
print(" ")
これのいくつかのバリエーションを試しましたが、成功しませんでした。
elif str(run_prog):
print ("Invalid: input")
print(" ")
Python マニュアルの特定の部分を参照することが私にとってであっても、フィードバックをいただければ幸いです。
ありがとう!