Python 为什么';你不喜欢第31行吗?

Python 为什么';你不喜欢第31行吗?,python,Python,为什么Python不喜欢有注释的打印行,而另一行没有注释 # This is a guess the number game import random guessesTaken = 0 myName = input('Hi there! What is your name?') number = random.randint(1, 20) print('Well ' + myName + ' I am thinking of a number between 1 and 20')

为什么Python不喜欢有注释的打印行,而另一行没有注释

# This is a guess the number game
import random

guessesTaken = 0

myName = input('Hi there! What is your name?')


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


while guessesTaken < 6:
    guess = int(input('Try and guess what it is!')) # There are 4 spaces in front of print.
    # guess = int(input ())


    guessesTaken = guessesTaken + 1

    if guess < number:
        print('Your guess is too low') # There are 8 spaces in front of print.

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

    if guess == number:
        break   

if guess == number:
    guessesTaken = str(guessesTaken)
   # print('Good Job, ' + myName + '!  You guessed my number ' + number + ' in ' + guessesTaken + ' guesses!')  
    print('Good Job, ' + myName + '!  You guessed my number in ' + guessesTaken + ' guesses!')
if guess != number:
    number = str(number)
    print('I am sorry.  The number I was thinking of was ' + number + ' Thanks for playing, though.')   

input('\n\nPress Enter to exit')
这是一个猜数字游戏 随机输入 猜测值=0 myName=input('你好!你叫什么名字?') number=random.randint(1,20) 打印('Well'+myName+'我想到的是一个介于1和20'之间的数字) 而GuessTestaken<6: guess=int(输入('Try and guess它是什么!”)#打印前有4个空格。 #guess=int(输入()) guessesTaken=guessesTaken+1 如果猜测<数字: 打印(“你的猜测太低了”)#打印前有8个空格。 如果猜测>数字: 打印('您的猜测太高') 如果guess==数字: 打破 如果guess==数字: guessesTaken=str(guessesTaken) #print('Good Job,'myName+'!你在'+guestastaken+'guesss!'中猜到了我的号码'+number+')) print('goodjob,'myName+'!你在'+guestastaken+'guests!'中猜到了我的号码!) 猜猜看!=编号: 编号=str(编号) print('很抱歉,我想到的号码是'+number+',不过谢谢你玩。') 输入('\n\n按Enter键退出')
因为
数字
是一个整数。也将其转换为字符串:

print('Good Job, ' + myName + '!  You guessed my number ' + str(number) + ' in ' + guessesTaken + ' guesses!')  
但是,最好使用:


字符串格式为您转换输入;有关您有哪些格式选项的详细信息,请参阅。

number
是一个整数。您不能添加整数和字符串,正如您收到的错误消息几乎肯定告诉您的那样


使用
str(number)
将其转换为字符串问题在于
number
是一个整数。正如您收到的错误消息所述,不能将整数和字符串相加

您可以使用
str(number)
将其转换为字符串,就像我在下面所做的那样

应该是这样的:

print('Good Job, ' + myName + '!  You guessed my number ' + str(number) + ' in ' + guessesTaken + ' guesses!')  

您是否收到错误消息(回溯)?如果是这样,请编辑您的文章,将其包括在内。欢迎使用Stack Overflow。请尽快阅读这一页。要正确显示代码,请在问题中输入(复制粘贴),然后使用编辑框上方的
{}
按钮缩进,使其看起来像代码。对于这样一个问题,注释第31行是很有帮助的(尽管我看到你的问题,与标题相反,确实更清楚地识别了这一行)。另外,作为一种风格,最好用
print({}干得好,{}!你在{}猜中猜到了我的号码{}!),格式(myName,number,GuessAtken)替换这一行
。你不需要这样的
str
。@sweeneyrod:在你前面。为什么这一行不一定要这样呢?打印('对不起,我想的数字是'+number+'谢谢你玩。'),因为就在它前面的那一行用
str(number)
替换了
number
print('Good Job, ' + myName + '!  You guessed my number ' + str(number) + ' in ' + guessesTaken + ' guesses!')