0
私のwhile
ループのif
の文では、ユーザがverify_name
をnoに設定したときに会社名を尋ねるためにループバックします。ただし、ユーザがverify_name
をnoに設定すると、verify_name
入力にリピートされます。このループを解消して会社名を再確認できるように、これを修正するにはどうすればよいですか?whileループでif文を修正するにはどうすればよいですか?
import time
while True:
company_name = input("\nWhat is the name of your company? ")
while True:
verify_name = input("\nPlease verify that {} is the correct name of your company \nusing Yes or No: ".format(company_name))
if verify_name.lower() == "no":
print("\nPlease re-enter your company name.")
continue
elif verify_name.lower() not in ('yes', 'y'):
print("\nThis is an invalid response, please try again.")
time.sleep(1)
continue
else:
print("\nWelcome {}.".format(company_name))
break
else:
continue
break
{'y'、 'yes'}の 'verify_nameの後に' else'が必要と思わない: '。ユーザーが有効な会社名を入力すると、すぐにループを解除します。だから 'print(" \ nあなたの会社名を再入力してください。) 'が' else'なしでループの最後に置かれた場合、 'yes/y'を入力しなかったときだけ実行されます。 –
@ChristianDean:確かに、あなたは 'else:'インデントを省略することができます。私はただ明白である。結果のバイトコードはいずれの場合も同じです。 –