Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/343.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
需要弄清楚如何在python中创建猜谜游戏的热/冷部分_Python - Fatal编程技术网

需要弄清楚如何在python中创建猜谜游戏的热/冷部分

需要弄清楚如何在python中创建猜谜游戏的热/冷部分,python,Python,我正在上我的第一堂编程课,问我关于StackOverFlow的第一个问题。我目前正在尝试编写一个猜测游戏程序,如果用户的猜测在用户猜测的10个上限或下限之内,我必须提醒用户。我目前正在阅读Python入门书的第5章 教授写道: 如果玩家的猜测低于生成的数字,则显示消息“太低!”如果玩家的猜测与生成的数字相差10点以内,但低于生成的数字,则显示消息“正在变暖,但仍然很低!” 我相信我已经解决了问题中的所有其他问题,但无法解决如何执行“热/冷”选项。我已将我编写代码的尝试作为注释 谢谢大家! imp

我正在上我的第一堂编程课,问我关于StackOverFlow的第一个问题。我目前正在尝试编写一个猜测游戏程序,如果用户的猜测在用户猜测的10个上限或下限之内,我必须提醒用户。我目前正在阅读Python入门书的第5章

教授写道: 如果玩家的猜测低于生成的数字,则显示消息“太低!”如果玩家的猜测与生成的数字相差10点以内,但低于生成的数字,则显示消息“正在变暖,但仍然很低!”

我相信我已经解决了问题中的所有其他问题,但无法解决如何执行“热/冷”选项。我已将我编写代码的尝试作为注释

谢谢大家!

import random

def main ():
    guess_game ()
    try_again()

def guess_game():
    number = random.randint (1, 1000)
    guess_taken = 0
    while guess_taken < 100000000:
        print ('I am thinking of a number between 1 and 1000.')
        guess = float (input('Please enter a guess: '))
        guess_taken = guess_taken + 1
        if guess < number:
            print('Your guess is too low.')
        elif guess > number:
            print('Your guess is too high.')
        #elif (number - guess) > (number - 10):
           #print ('Guess Is Hot')
        #elif (number - guess) < (number + 10):
           #print ('Guess is cold')
        else:
            guess == number
            print('Good job! You guessed my number in', guess_taken,' guesses!')
            try_again ()
            print ()

#think about doing a range somewhere

def try_again():
    again = 'y'
    while again == 'y' or again == 'Y':
        again = input ('Would you like to play again?')
        if again == 'y' or again == 'Y':
            guess_game()
        else:
            exit ()
随机导入
defmain():
猜猜游戏()
再试一次
def guess_game():
number=random.randint(11000)
猜一猜=0
当guess_小于100000000时:
打印('我想到的是一个介于1和1000之间的数字')
猜测=浮动(输入('请输入猜测:'))
猜一猜=猜一猜+1
如果猜测<数字:
打印('您的猜测太低')
elif guess>数字:
打印('您的猜测太高了')
#elif(数字-猜测)>(数字-10):
#打印(‘猜测很热’)
#elif(数字-猜测)<(数字+10):
#打印(‘猜是冷的’)
其他:
猜测==数字
打印(“干得好!你猜中了我的号码,猜中了,猜中了!”)
再试一次()
打印()
#想一想在什么地方做一个靶场
def重试()
再次='y'
而再次=='y'或再次=='y':
再次=输入('您想再次播放吗?')
如果再次==“y”或再次==“y”:
猜游戏
其他:
退出()

我希望这能奏效。我现在没有调试器/控制台

import random

def main():
    while True:
        guess_game()
        schoice = try_again()
        if schoice == False:
            exit()


def guess_game():
    number = random.randint (1, 1000)
    guess_taken = 0
    while True:
        print ('I am thinking of a number between 1 and 1000.')
        while True:
            try:
                guess = float (input('Please enter a guess: '))
                break
            except:
                continue
        guess_taken = guess_taken + 1
        if guess < number:
            if (number - guess) < 10:
                print ('Guess is hot')
            else:
                print ('Guess is cold')
            print('Your guess is too low.')
        elif guess > number:
            if (guess - number) < 10:
                print ('Guess is hot')
            else:
                print ('Guess is cold')
            print('Your guess is too high.')
        else:
            break
    print('Good job! You guessed my number in', guess_taken,' guesses!')

def try_again():
    again = 'y'
    while again == 'y' or again == 'Y':
        again = input ('Would you like to play again?')
        if again == 'y' or again == 'Y':
            return True
        else:
            return False

main()
随机导入
def main():
尽管如此:
猜游戏
schoice=再试一次()
如果schoice==False:
退出()
def guess_game():
number=random.randint(11000)
猜一猜=0
尽管如此:
打印('我想到的是一个介于1和1000之间的数字')
尽管如此:
尝试:
猜测=浮动(输入('请输入猜测:'))
打破
除:
持续
猜一猜=猜一猜+1
如果猜测<数字:
如果(数字-猜测)<10:
打印(‘猜测很热’)
其他:
打印(‘猜是冷的’)
打印('您的猜测太低')
elif guess>数字:
如果(猜测-数字)<10:
打印(‘猜测很热’)
其他:
打印(‘猜是冷的’)
打印('您的猜测太高了')
其他:
打破
打印(“干得好!你猜中了我的号码,猜中了,猜中了!”)
def重试()
再次='y'
而再次=='y'或再次=='y':
再次=输入('您想再次播放吗?')
如果再次==“y”或再次==“y”:
返回真值
其他:
返回错误
main()

如果这回答了你所有的问题,那么请检查左上下箭头上的记号,中间的数字。如果没有,请在下面评论这个答案。

我希望这能奏效。我现在没有调试器/控制台

import random

def main():
    while True:
        guess_game()
        schoice = try_again()
        if schoice == False:
            exit()


def guess_game():
    number = random.randint (1, 1000)
    guess_taken = 0
    while True:
        print ('I am thinking of a number between 1 and 1000.')
        while True:
            try:
                guess = float (input('Please enter a guess: '))
                break
            except:
                continue
        guess_taken = guess_taken + 1
        if guess < number:
            if (number - guess) < 10:
                print ('Guess is hot')
            else:
                print ('Guess is cold')
            print('Your guess is too low.')
        elif guess > number:
            if (guess - number) < 10:
                print ('Guess is hot')
            else:
                print ('Guess is cold')
            print('Your guess is too high.')
        else:
            break
    print('Good job! You guessed my number in', guess_taken,' guesses!')

def try_again():
    again = 'y'
    while again == 'y' or again == 'Y':
        again = input ('Would you like to play again?')
        if again == 'y' or again == 'Y':
            return True
        else:
            return False

main()
随机导入
def main():
尽管如此:
猜游戏
schoice=再试一次()
如果schoice==False:
退出()
def guess_game():
number=random.randint(11000)
猜一猜=0
尽管如此:
打印('我想到的是一个介于1和1000之间的数字')
尽管如此:
尝试:
猜测=浮动(输入('请输入猜测:'))
打破
除:
持续
猜一猜=猜一猜+1
如果猜测<数字:
如果(数字-猜测)<10:
打印(‘猜测很热’)
其他:
打印(‘猜是冷的’)
打印('您的猜测太低')
elif guess>数字:
如果(猜测-数字)<10:
打印(‘猜测很热’)
其他:
打印(‘猜是冷的’)
打印('您的猜测太高了')
其他:
打破
打印(“干得好!你猜中了我的号码,猜中了,猜中了!”)
def重试()
再次='y'
而再次=='y'或再次=='y':
再次=输入('您想再次播放吗?')
如果再次==“y”或再次==“y”:
返回真值
其他:
返回错误
main()

如果这回答了你所有的问题,那么请检查左上下箭头上的记号,中间的数字。如果没有,请在此答案下方进行评论。

您的程序将无法运行。我测试过了。一旦我用你的热/冷做了一个数字猜测游戏,回头看,你需要改变这一行:

guess = float(input('Please enter a guess: '))
致:


我还没有测试过这个,但它应该可以工作。

您的程序将无法工作。我测试过了。一旦我用你的热/冷做了一个数字猜测游戏,回头看,你需要改变这一行:

guess = float(input('Please enter a guess: '))
致:


我还没有测试过这个,但它应该可以工作。

我知道我迟到了,但这可能会帮助未来的人们寻找这个。我对代码做了一些小改动,结果就是这样。全面测试和功能

import random
import sys


def main():
    guess_the_number()
    try_again()


def guess_the_number():
    number = (random.randint(1, 1000))
    tries = 0
    print("---------------------------------------------\nYou need to guess a number between 1 and "
          "1000\n---------------------------------------------")
    while tries < 99999999999:
        guess = float(int(input("Please enter a number: ")))
        tries = tries + 1
        if guess < number:
            if (number - guess) < 10:
                print("Guess is hot")
            else:
                print("Guess is cold")
            print("Your guess is low.")
        elif guess > number:
            if (guess - number) < 10:
                print("Guess is hot")
            else:
                print("Guess is cold")
            print("Your guess is high.")
        else:
            break
    print("-------------------------------------------\nGood job! You guessed my number in", tries,
          "tries!\n-------------------------------------------")


def try_again():
    again = "y"
    while again == "y" or again == "Y" or again == "yes" or again == "Yes":
        again = input("Would you like to play again? ")
        if again == "y" or again == "Y" or again == "yes" or again == "Yes":
            return main()
        else:
            return sys.exit(0)


main()
随机导入
导入系统
def main():
猜猜这个数字()
再试一次
def guess__数字():
number=(random.randint(11000))
尝试=0
打印(“---------------------------------------------------\n您需要猜一个介于1和之间的数字”
“1000\n---------------------