1

我一直在尝试通过将猜测输入限制在 2 个数字(1 和 100)之间并询问猜测输入是否是数字来改进我在 Python 中的猜谜游戏。我一直在尝试同时做到这一点。无论如何我可以通过最少的编码来做到这一点吗?

4

2 回答 2

2

您可以使用while循环来不断询问用户有效输入,直到用户输入:

while True:
    try:
        number = int(input("Enter a number between 1 and 100: "))
        if 1 <= number <= 100:
            break
        raise ValueError()
    except ValueError:
        print("Input must be an integer between 1 and 100.")
于 2018-10-08T06:10:40.203 回答
0
while True:
  try:
    number = raw_input("Enter a number between 1 and 100: ")
    if number.isdigit():
       number=int(number)
    else:   
       raise ValueError()
    if 1 <= number <= 100:
        break
    raise ValueError()
  except ValueError:
    print("Input must be an integer between 1 and 100.")

这是对@blhsing 答案的一个小改进,因此程序不会在字符串输入时崩溃

于 2018-10-08T09:18:54.557 回答