Random Python 3/eli5-随机数游戏vs电脑

Random Python 3/eli5-随机数游戏vs电脑,random,Random,我的任务是和电脑做一个游戏。我应该“想一个数字”,计算机必须猜出来。如果它猜对了,我应该说C,然后跳出循环。如果是一个较低的数字,我应该说L,计算机应该尝试生成一个较低的数字。H代表更高,是相反的情况。到目前为止,我成功地实现了所有功能,只有一个例外。根据下面的代码,例如,如果我告诉计算机L,它将不会超过最后一个数字的限制,但是,如果我说H,它将再次随机生成数字。 请记住,这是一个初学者课程的任务(功能尚未涵盖)。我们必须使用循环。对于函数getInteger和getLetter,请不要注意,它

我的任务是和电脑做一个游戏。我应该“想一个数字”,计算机必须猜出来。如果它猜对了,我应该说C,然后跳出循环。如果是一个较低的数字,我应该说L,计算机应该尝试生成一个较低的数字。H代表更高,是相反的情况。到目前为止,我成功地实现了所有功能,只有一个例外。根据下面的代码,例如,如果我告诉计算机L,它将不会超过最后一个数字的限制,但是,如果我说H,它将再次随机生成数字。 请记住,这是一个初学者课程的任务(功能尚未涵盖)。我们必须使用循环。对于函数getInteger和getLetter,请不要注意,它们是我们的教授创建的函数,类似于input(),只是限制用户输入不同于字母或整数的内容

代码如下:

from pcinput import getLetter, getInteger
from random import random, randint, seed


mynum = getInteger("My number is:")


comnum = randint(0, 1000)
print("Is your number:", comnum, "?")

while True:
    answer = getLetter("That is: ")
    if answer == "C":
        print("Congratulations!")
        break
    if answer == "L":
        comnum = randint(0,comnum)
        print("Is your number:", comnum, "?")
        possibility = range(comnum, )
        continue
    elif answer == "H":
        comnum = randint(comnum, 1000)
        print("Is your number:", comnum, "?")
        continue
*comnum是计算机应该输入的字母

我的问题基本上是如何修正这段代码,这样计算机就可以在第一次猜测和最后一次猜测之间创建某种范围,并且不会超过或低于该范围,从而缩短每次猜测之间的间隔。(我希望你明白我的意思)

多谢各位

我的方法是(从您的代码开始):

from random import random, randint, seed  
mynum = int(input("My number is: "))

maximum = 1000
minimum = 0

while True:
    comnum = randint(minimum, maximum)
    print("Is your number:", comnum, "?")
    answer = input("That is ")
    if answer == "C":
        print("Congratulations!")
        break
    if answer == "L":
        maximum = comnum - 1
        continue
    elif answer == "H":
        minimum = comnum + 1