首页 > 解决方案 > 不能在 python 中限制 randint

问题描述

该程序也没有显示任何错误。而且我找不到我的错误。当我运行此代码时,它说我的随机数要么无限高要么无限低

import random

def game1():
    print("Hello I guessed a number, try to find it")
    my_number = int(input("Guess the number:"))
    a = random.randint(1,5)
    number_of_tries = 1
    while a !=  my_number:
        if a > my_number:
            print("Your number must be higher")
            number_of_tries = number_of_tries+1
            player_guess = int(input("Guess the number:"))
        if a < my_number:
            print("Your number must be lower")
            number_of_tries = number_of_tries + 1
            player_guess = int(input("Guess the number:"))
        if a == my_number:
            print("Congrats, you guessed the number")
            print("Number of guesses is:", number_of_tries)
            break

game1()

标签: pythonrandom

解决方案


您将随后的猜测分配给player_guess而不是my_number...

我会将代码整理为:

a = random.randint(1, 5)
number_of_tries = 0

print("Hello I guessed a number, try to find it")

while True:
    my_number = int(input("Guess the number:"))
    number_of_tries += 1

    if a == my_number:
        break

    if a > my_number:
        print("Your number must be higher")
    if a < my_number:
        print("Your number must be lower")

print("Congrats, you guessed the number")
print("Number of guesses is:", number_of_tries)

推荐阅读