TypeError:必须是str,而不是int(基本用户)

时间:2017-11-08 00:19:01

标签: python input

我是Python的新手,只是学习基础知识。你可以帮我纠正一下,告诉我怎么以及为什么我错了?

age = input('Please enter your age:')
ten = 10
agePlusTen= age + ten
print('You will be', agePlusTen, 'in 10 years'

Traceback (most recent call last):
   File "C:/Users/Admin/Documents/Python/6.2 fixed.py", line 3, in <module>
    print('You will be', age + ten, 'in 10 years')
TypeError: must be str, not int

2 个答案:

答案 0 :(得分:2)

在python中,input()返回字符串。因此,您应首先将age转换为int,然后将其添加到变量ten

以下情况应该有效。

age = input('Please enter your age:')
ten = 10
agePlusTen= int(age) + ten
print('You will be ' + str(agePlusTen) + ' in 10 years')

此外,当您想通过连接一组字符串来打印字符串时,如果其中任何字符串不是字符串,请不要忘记使用str()函数将它们转换为字符串。

答案 1 :(得分:0)

在python中使用它时总是返回一个字符串。也就是说,使用 input()来存储变量时,变量将始终为string类型,因此将 age 变量转换为整数写入,如下所示:
   age = input('Please enter your age:') ten = 10 agePlusTen= int(age) + ten print('You will be', agePlusTen, 'in 10 years'),

我认为这应该有用。