Python 我猜了一个数字游戏,但每次我运行它并键入一个数字,它就会崩溃

Python 我猜了一个数字游戏,但每次我运行它并键入一个数字,它就会崩溃,python,Python,这是我的代码: #This is a guess the number game import random print('Hello what is your name') name = input() secretNumber = random.randint(1, 20) print('Well ' + name + ' I am thinking of a number between 1 and 20. You have 6 guesses') #Ask the player to

这是我的代码:

#This is a guess the number game
import random

print('Hello what is your name')
name = input()
secretNumber = random.randint(1, 20)
print('Well ' + name + ' I am thinking of a number between 1 and 20. You have 6 guesses')

#Ask the player to guess 6 times.
for guessTaken in range(1, 7):

    try:
        print('Take a guess')
        guess = int(input())
    except ValueError:
            print('That is not a number')

    guess = int(input())
    guess = str(input())
    if guess < secretNumber:
        print('Your guess is to low.')
    elif guess > secretNumber:
        print('Your gues s is to high.')
    else:
        break # This condition is the correct guess!

if guess == secretNumber:
    print('Good job ' + name + '. You guessed my number!')
    print('It was ' + str(secretNumber))
    print('and you guessed it in ' + str(guessTaken) + ' guesses')
else:
    print('Nope. The number I was thinking of was ' + str(secretNumber))
这是一个猜数字游戏 随机输入 打印('你好,你叫什么名字') 名称=输入() secretNumber=random.randint(1,20) 打印('Well'+name+'我想的是一个介于1和20之间的数字。你有6次猜测') #让玩家猜6次。 对于在范围(1,7)内进行的猜测: 尝试: 打印('猜一猜') guess=int(输入()) 除值错误外: 打印('这不是一个数字') guess=int(输入()) guess=str(输入()) 如果guess秘密编号: 打印('您的客人太高了') 其他: break#这个条件是正确的猜测! 如果guess==secretNumber: 打印(“干得好”+name+。你猜对我的号码了!”) 打印('它是'+str(secretNumber)) print('你在'+str(猜测)+'猜测'中猜到了它) 其他: print('不,我想的数字是'+str(secretNumber)) 每当我运行它并键入一个数字时,就会出现:guess=int(input()) ValueError:以10为基数的int()的文本无效:“”

请尝试以下操作:

#This is a guess the number game
import random


name = input('Hello what is your name: ')
secretNumber = random.randint(1, 20)
print('Well, ' + name + ' I am thinking of a number between 1 and 20. You have 6 guesses')

#Ask the player to guess 6 times.
for guessTaken in range(1, 7):

    try:
        guess = int(input('Take a guess: '))
    except ValueError:
            print('That is not a number')

    if guess < secretNumber:
        print('Your guess is to low.')
    elif guess > secretNumber:
        print('Your guess is to high.')
    else:
        break # This condition is the correct guess!

if guess == secretNumber:
    print('Good job ' + name + '. You guessed my number!')
    print('It was ' + str(secretNumber))
    print('and you guessed it in ' + str(guessTaken) + ' guesses')
else:
    print('Nope. The number I was thinking of was ' + str(secretNumber))
我想你不想要

guess = int(input())
guess = str(input())

在你的循环中。尝试摆脱这些(在循环过程中,您只需要接受用户输入一次,而不是三次)。但是,将
guess=int(input())
放在
try
块中。

您认为
guess=str(input())
之后的
guess=int(input())
将实现什么?如果出现错误,您的代码将崩溃,guess将定义在哪里?;input还带有一个参数,因此您无需打印
guess = int(input())
guess = str(input())