【问题标题】:Putting a Try and Except inside a Loop在循环中进行尝试和除外
【发布时间】:2016-10-23 12:10:53
【问题描述】:

您好,我正在尝试弄清楚如何在 while 循环中放置“尝试并排除”。我的兄弟挑战我创建一个计算机程序,创建一个随机数(1-100),然后用户尝试猜测它是什么。我设法让它工作,但如果用户实际上没有输入数字,我应该做些什么,这样程序不仅会停止工作,而且只会提示用户他们做错了什么。下面我附上了我的完整代码。该程序有效,但我不确定如何将 While 循环放入其中。我尝试过做类似“猜猜!=整数”之类的事情,并且我一直在寻找不同的方法来了解如何做到这一点。我见过的最好的是有人只是说将 try 和 except 放入一个 while 循环中,但它并没有告诉我我该怎么做。 try-except inside a loop 。如果可能的话,我还想知道是否无论如何我都可以在用户回答时随时调用这个循环,所以如果他们不断地输入错误,我不需要做任何其他事情。感谢您花时间阅读本文,对不起,我写了很多

import random
import time
def guessMyNumber():
print("Hello , welcome to Guess My Number")
time.sleep(1)
print ("The computer is thinking of a number between 1-100")
time.sleep(2)
print("Try to guess the number in as few attempts as possible")
number=random.randint(1,100)
try:
    guess=int(input("Take a guess "))
except ValueError:
    print("You must enter a whole number")
    guess=int(input("Please take another guess, making sure that it is a whole number. Thank you. "))
 tries = 1
while guess !=number:
    if guess>number:
        print("You need to go lower")
        guess=int(input("Take a guess "))
    else:
        print("Go higher!")
        guess=int(input("Take a guess "))
    tries=tries+1
if tries < 5:
    print("Well done! You guessed the number in", tries, "tries! If you would like to play again please type 'guessMyNumber()'")
else:
        print("You guessed the number in", tries, "tries. If you would like to play again type 'guessMyNumber()' ")

guessMyNumber()

【问题讨论】:

    标签: while-loop try-except python-3.5


    【解决方案1】:

    您的 except 块不应引发异常,下面是一个示例,您可以如何执行 int 并且您可以根据您的程序要求进行修改

    count = 0
    while count < 5:
     try:
        guess=int(input("Take a guess "))
     except ValueError:
        print("You must enter a whole number")
        print("Please take another guess, making sure that it is a whole number. Thank you. ")
     count = count+1 
    

    【讨论】:

    • 啊,我明白了,所以我必须让用户的所有输入都经过这个过程,而不是 try- 除了一个部分。谢谢
    猜你喜欢
    • 2023-03-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-11-14
    • 1970-01-01
    • 1970-01-01
    • 2021-08-06
    相关资源
    最近更新 更多