Python 中断不在我的if语句中工作

Python 中断不在我的if语句中工作,python,Python,正在寻找有关以下代码块的帮助 ## This is a number guessing game! import random guessesTaken = 0 print('Hello! What is your name?') myName= input() number= random.randint(1, 20) print ('Well, '+ myName + ', I am thinking of a number between 1 and 20.') for gues

正在寻找有关以下代码块的帮助

## This is a number guessing game!

import random

guessesTaken = 0

print('Hello! What is your name?')
myName= input()

number= random.randint(1, 20)
print ('Well, '+ myName + ', I am thinking of a number between 1 and 20.')

for guessesTaken in range(6):
    print ('Take a guess.')
    guess=input()
    guess=int(guess)

    if guess < number:
        print ('Your guess is too low.')

    if guess > number:
        print('Your guess is to high!')

    if guess == number:
        break

    if guess == number:
        guessesTaken = str(guessesTaken+1)
        print('Good job,  '+ myName + '! You guessed my number in ' + guessesTaken + ' guesses!')
    if guess != number:
            number= str(number)
            print('Nope. The number I was thinking of was ' + number + '.')
这是一个猜数字的游戏! 随机输入 猜测值=0 打印('你好!你叫什么名字?') myName=input() number=random.randint(1,20) 打印(“嗯,“+myName+”,我想到的是一个介于1和20之间的数字。) 对于范围(6)内的猜测: 打印('猜一猜') 猜测=输入() 猜测=int(猜测) 如果猜测<数字: 打印('您的猜测太低') 如果猜测>数字: 打印('您的猜测过高!') 如果guess==数字: 打破 如果guess==数字: guessesTaken=str(guessesTaken+1) print('goodjob,'myName+'!你在'+guestastaken+'guests!'中猜到了我的号码!) 猜猜看!=编号: 编号=str(编号) 打印('不,我想的数字是'+number+'。)
我猜您希望执行
中断之外的代码,我会将您的代码更改为

    ## This is a number guessing game!

import random

guessesTaken = 0

print('Hello! What is your name?')
myName= input()

number= random.randint(1, 20)
print ('Well, '+ myName + ', I am thinking of a number between 1 and 20.')

for guessesTaken in range(6):
    print ('Take a guess.')
    guess=input()
    guess=int(guess)

    if guess < number:
        print ('Your guess is too low.')

    elif guess > number:
        print('Your guess is to high!')

    elif guess == number:
        # print 'Good job' here instead of beyond the break in a separate if statement
        guessesTaken = str(guessesTaken+1)
        print('Good job,  '+ myName + '! You guessed my number in ' + guessesTaken + ' guesses!')
        break

    if guessesTaken == 5:
        number= str(number)
        print('Nope. The number I was thinking of was ' + number + '.')
这是一个猜数字的游戏! 随机输入 猜测值=0 打印('你好!你叫什么名字?') myName=input() number=random.randint(1,20) 打印(“嗯,“+myName+”,我想到的是一个介于1和20之间的数字。) 对于范围(6)内的猜测: 打印('猜一猜') 猜测=输入() 猜测=int(猜测) 如果猜测<数字: 打印('您的猜测太低') elif guess>数字: 打印('您的猜测过高!') elif guess==数字: #在此处打印“干得好”,而不是在单独的if语句中超出中断 guessesTaken=str(guessesTaken+1) print('goodjob,'myName+'!你在'+guestastaken+'guests!'中猜到了我的号码!) 打破 如果guessesTaken==5: 编号=str(编号) 打印('不,我想的数字是'+number+'。)

通过这种方式,程序会检查您的猜测是否正确-
如果GuessAtaken==5:
,如果您猜到了数字,那么在打印
很好
等后,它就会中断。我想您应该这样做:(尝试一下)

随机导入
最大猜测数=6
猜测=错误
myName=input('你好!你叫什么名字?')
number=random.randint(1,20)
print('Well,{0},我想到的是一个介于1和20之间的数字。'format(myName))
对于范围(1,最大猜测+1)内的猜测:
猜测=int(输入(“猜测:”)
如果猜测<数字:
打印('您的猜测太低!')
如果猜测>数字:
打印('您的猜测过高!')
如果guess==数字:
猜测=正确
打破
如果猜测:
print('goodjob,{0}!您在{1}猜中猜到了我的号码!'。format(myName,guestaken))
打印(“恭喜你赢了!”)
埃利夫没有猜到:
打印(“嘘,你输了!”)
您的中断可以工作,但是您得到的错误是,当您使用中断时,循环结束,并且没有达到下一个条件


*上面的代码有点整洁*

不工作怎么办?发生了什么?必须有所有错误描述:① 正在进行的工作,② 预期的结果是什么,,③ 观察到的结果是什么。我猜您的
中断
工作正常,并立即退出
for
-循环。因此,如果guess==number:在
中断
下一行,则永远无法到达下一行。您的中断工作正常,请首先取消最后两行
if
的缩进,以查看其工作状态,将
number
设置为10并猜测为10
import random

guessesTaken = 0

print('Hello! What is your name?')
myName= input()

number= random.randint(1, 20)
print ('Well, '+ myName + ', I am thinking of a number between 1 and 20.')
print(number)

for guessesTaken in range(6):
    print ('Take a guess.')
    guess=input()
    guess=int(guess)

    if guess < number:
        print ('Your guess is too low.')

    if guess > number:
        print('Your guess is to high!')

    if guess == number:
        break

if guess == number:
    guessesTaken = str(guessesTaken+1)
    print('Good job,  '+ myName + '! You guessed my number in ' + guessesTaken + ' guesses!')
if guess != number:
    number= str(number)
    print('Nope. The number I was thinking of was ' + number + '.')
if guess == number:
    guessesTaken = str(guessesTaken+1)
    print('Good job,  '+ myName + '! You guessed my number in ' + guessesTaken + ' guesses!')
if guess != number:
    number= str(number)
    print('Nope. The number I was thinking of was ' + number + '.')
import random

maxGuesses =  6
guessed    = False
myName     = input('Hello! What is your name? ')
number     = random.randint(1, 20)
print ('Well, {0}, I am thinking of a number between 1 and 20.'.format(myName))

for guessesTaken in range(1, maxGuesses + 1):
    guess = int(input("Guess: "))

    if guess < number:
        print ('Your guess is too low!')

    if guess > number:
        print('Your guess is to high!')

    if guess == number:
        guessed = True
        break

if guessed:
    print('Good job, {0}! You guessed my number in {1} guesses!'.format(myName, guessesTaken))
    print("Congrats you win!")
elif not guessed:
    print("Shucks, you lose!")