我必須編寫一個代碼,僅當用戶輸入術語“Cyril”時才會執行下面的 while 循環。我是一個真正的新手,我只能想出以下解決方案,該解決方案將強制用戶重新啟動程序,直到他們輸入正確的輸入,但我希望它繼續要求用戶輸入,直到他們輸入正確答案。有人可以幫忙嗎?我知道一旦我意識到有一個簡單的解決方案,我可能會踢自己。number_list = []attempts = 0name = Falsenumber = 0name_question = input("You are the President of RSA, what is your name?: ")if name_question == "Cyril": name = Trueelse: print("\nThat is incorrect, please restart the program and try again.\n") if name: number = int(input("Correct! Please enter any number between -1 and 10: ")) while number > -1: number_list.append(number) number = int(input("\nThank you. Please enter another number between -1 and 10: ")) if number > 10: print("\nYou have entered a number outside of the range, please try again.\n") number = int(input("Please enter a number between -1 and 10: ")) elif number < -1: print("\nYou have entered a number outside of the range, please try again. \n") number = int(input("Please enter a number between -1 and 10: ")) elif number == -1: average_number = sum(number_list) / len(number_list) print("\nThe average number you have entered is:", round(average_number, 0))
2 回答

神不在的星期二
TA貢獻1963條經驗 獲得超6個贊
將代碼開頭更改為:
while True:
name_question = input("You are the President of RSA, what is your name?: ")
if name_question == "Cyril":
name = True
break
else:
print("\nThat is incorrect, please try again.\n")

GCT1015
TA貢獻1827條經驗 獲得超4個贊
即使我不明白你的問題是否簡單或者我是個白癡,你也可以嘗試這個:
name_question = input("You are the President of RSA, what is your name?: ")
while name_question != "Cyril":
name_question = input("You are the President of RSA, what is your name?: ")
...
添加回答
舉報
0/150
提交
取消