私のプログラムには、単純な「Y/N」入力が含まれています。コード内にwhileループを配置しました。入力された入力が「Y/N」でないか、またはそのいずれかのバリエーションがある場合に応答するはずです。それはする必要はなく、唯一の未承認の入力でそれを認識するように設計されたwhileループのための応答を出力するところ、私が受け付けた入力を入力してくださいループしていないときに応答を出力する - Python
import time
count_d = 10
load = input('Import modules? Y/N')
if load == 'Y' or load == 'y' or load == ' Y' or load == ' y':
print('Modules loading...')
while count_d >0:
print(count_d)
count_d = count_d-1
time.sleep(1)
print('Modules loaded')
elif load == 'N' or load == 'n' or load == ' N' or load == ' n':
print('Shutdown initiated.')
sys.exit()
while load != 'Y' or load != 'y' or load != ' Y' or load != ' y' and load != 'N' or load != 'n' or load != ' N' or load != ' n':
print('This answer does not correspond with the desired output')
load = input('Import modules? Y/N')
if load == 'Y' or load == 'y' or load == ' Y' or load == ' y':
print('Modules loading...')
while count_d >0:
print(count_d)
count_d = count_d-1
time.sleep(1)
print('Modules loaded')
break
elif load == 'N' or load == 'n' or load == ' N' or load == ' n':
print('Shutdown initiated.')
break
は、プログラムが応答します。どのようなエラーが発生したため、正常に完了したときに間違った出力がリリースされるのですか?
whileループを '' 'else'''ブロックの中に入れて、入力されないようにしてください(例:A == BまたはC == D)第1の条件のいずれかが真である場合。あなたのwhileループの中に '' 'または' 'の条件があるため、それが入っています。代わりに、すべて ''と '' ''が必要です。私があなたの意図を誤解していない限り... – mgarey
@ mgareyありがとう、それは今働きます。なぜあなたはそれをelseブロックに置く必要があるのかをさらに説明できますか? –
@ matt-333、私の答え、https://stackoverflow.com/a/44637757/2306662 – nikpod