它是一个随机数学问题,它返回一个我没想到的错误。请帮忙! 错误是:print('你的得分为:'+ int(得分)) TypeError:无法将'int'对象隐式转换为str
import random
count=0
while count<10:
numb1=random.randint(1,12)
numb2=random.randint(1,12)
ops=[' add ',' times ',' takeaway ']
ops2=random.choice(ops)
question=str(numb1)+''.join(ops2)+str(numb2)
print(question)
ans=int(input('Answer: '))
count=count+1
score=0
if ans== numb1+numb2 or numb1-numb2 or numb1*numb2:
score=score+1
print('Your score was: '+score)
答案 0 :(得分:1)
此行不正确。无法添加int
和str
。
print('Your score was: '+score)
使用以下其中一项:
print('Your score was:', score)
print('Your score was: '+str(score))
print('Your score was: %d'%(score))
print('Your score was: {}'.format(score))
答案 1 :(得分:1)
在最后一行,您需要将整数转换为字符串
print('Your score was: ' + str(score))
或者,您可以使用格式字符串:
print('Your score was: %u' % score)
这是因为你不能直接将整数连接到字符串,例如
"I have " + 7 + " kittens"
- 为此,您必须先将整数(在本例中为7
)转换为字符串。您可以使用Python内置的str()
函数来实现。