Python错误。无法将int对象转换为" str"明确地(完全迷惑初学者)

时间:2018-04-11 14:21:54

标签: python python-3.x

因此,我决定制作一小段代码,将您的年龄转换为狮子年(基本上将您的年龄乘以5)。 我遇到的问题是我不能把它作为一个整数和输入的年龄,或者我不能让它打印出来的" lionage"下面的整数。

下面的代码和错误标志:

name = input ("please type your name in: ")
age = int(input ("please type your age in: "))
age = int(age)
five = int(str(5))
lionage = int(age*five)

print ("Hello " + name + "! Your age is " + age + " but in lion years it's " + str(lionage) + " years")

错误:无法转换' int'隐含地反对str

我在代码中出错了可能是错的。

(顺便说一下,请优先给我一个答案,说明为什么会出错,以及我如何修复它以简化代码以使其更小。(我想自己学习,谢谢:))

3 个答案:

答案 0 :(得分:0)

围绕所有变量添加str()。

例如:

a = 21
print("Your age is " + str(a))

这将输出" Hello World" (没有语音标记)。

答案 1 :(得分:0)

只要类型没有混淆,Python就可以打印数字,字符串......几乎任何东西。在您的情况下,age是一个数字,而您要打印的行的其余部分是一个字符串。您需要通过添加str(age)而非age来将您的号码转换为字符串。

答案 2 :(得分:0)

年龄是一个整数,您尝试使用字符串进行连接。在python中,你不能直接这样做。

print ("Your age is " + age)) # <- wrong answer

你必须在结束

之前将年龄转换为字符串
print ("Your age is " + str(age)) # <- Correct answer