将Python中的While循环条件重置为再次播放测验(&q; [英] Reset while loop conditions in python to "play the quiz again"

查看:19
本文介绍了将Python中的While循环条件重置为再次播放测验(&q;的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我在这方面还是新手。实际上,我只需要代码来重置While循环。

当用户到达测验结束时,它会询问用户是否想要再次玩。如果用户输入y,测验应重新开始。

我的代码:

print("Moose Quiz")

question = 0    # Tells us which questions the user has completed
questions = ["What is the average life span of a moose?: ",
             "How much do moose eat on a daily basis?: ",
             "The fastest moose ran...?: "]

userAnswers = ["","",""] # Stores the users answers

answers = ["a. 10 - 14 years
b. 15 - 25 years
c. Blue
d. 26 - 35  years
",
           "a. 24 lbs a day
b. 39 lbs a day
c. 67 lbs a day
d. 73 lbs a day",
           "a. 20 mph
b. 25 mph
c. 35 mph
d. 40 mph"]

correct = 0

while question < 3:
   print(questions[question])
   print(answers[question])
   answers[question] = input("To answer, pick a letter or leave it blank to skip it: ").lower()

   if question == 0:
       if answers[question] == "a":
           print()
           print("Sorry, please try again.")
           question = question + 1
           print()
       elif answers[question] == "b":
           print()
           print("Good Job! That is correct.")
           correct = correct + 1
           question = question + 1
           print()
       elif answers[question] == "c":
           print()
           print("Sorry, please try again.")
           question = question + 1
           print()
       elif answers[question] == "d":
           print()
           print("Sorry, please try again.")
           question = question + 1
           print()
       elif answers[question] == "":
           print("Awww...you skipped one!")
           question = question + 1
           print()    
       else:
           print("Invalid character, please try again.")    

   elif question == 1:
       if answers[question] == "a":
           print()
           print("Sorry, please try again.")
           question = question + 1
           print()
       elif answers[question] == "b":
           print()
           print("Sorry, please try again.")
           question = question + 1
           print()
       elif answers[question] == "c":
           print()
           print("Sorry, please try again.")
           question = question + 1
           print()
       elif answers[question] == "d":
           print()
           print("Terrific! You got it right!")
           correct = correct + 1
           question = question + 1
           print()
       elif answers[question] == "":
           print("Awww...you skipped one!")
           question = question + 1
           print()    
       else:
           print("Invalid character, please try again.")

   elif question == 2:
       if answers[question] == "a":
           print()
           print("Sorry, please try again.")
           question = question + 1
           print()
       elif answers[question] == "b":
           print()
           print("Sorry, please try again.")
           question = question + 1
           print()        
       elif answers[question] == "c":
           print()
           print("Amazing! You're awesome!")
           correct = correct + 1
           question = question + 1
           print()
       elif answers[question] == "d":
           print()
           print("Sorry, please try again.")
           question = question + 1
           print()
       elif answers[question] == "":
           print("Awww...you skipped one!")
           question = question + 1
           print()
           print("Thanks for playing!")
       again = input("Would you like to play again?: ")

推荐答案

最后,您可以将问题重置为0

while question < 3:
   ...

   again = input("Would you like to play again?: ")
   if again == 'y': 
       question = 0

这篇关于将Python中的While循环条件重置为再次播放测验(&q;的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆