2016-10-28 39 views
0

我正在做一个练习问题,我需要从字符串中读取输入。如何读取输入()作为Python中的字符串

person_age = 6 
person_name = '' 
person_name = input() 
print('In 5 years', person_name, 'will be', person_age + 5) #not editable 

但是,我得到的错误:TypeError: Can't convert 'int' object to str implicitly

我假设它这样做是因为PERSON_NAME已被解读为即使提供的字符串一个int。我怎样才能得到这份工作?赶上是我不能编辑打印行。我只能在1声明中代替person_name = input()来做到这一点。我GOOGLE了它,看到,而不是使用的raw_input但功能不存在(也许是我对蟒蛇3)

+0

你能复制并粘贴整个回溯而不只是'TypeError'行吗? – rlee827

+1

如果你没有'raw_input',那么你在Python 3上,'input'总是返回一个字符串。我只是在Python 2.7和3.5上运行你的代码,并没有给我一个错误。 – cco

+0

没有什么趣事:'回溯(最近一次通话最后):文件“main.py”,第7行,在 print('5年后,person_name','person_age + 5) TypeError:Can not将'int'对象隐式转换为str' – dukevin

回答

0

下面是一个例子,我发现:

1. name = input("What's your name? ")

2. print("Nice to meet you " + name + "!")

3. age = input("Your age? ")

4. print("So, you are are already " + age + " years old, " + name + "!")

输出看起来像:

你叫什么名字? “弗兰克”

很高兴认识你弗兰克!

您的年龄? 30

所以,你已经30岁了,弗兰克!

检查以下网站获取更多这样的例子: http://www.python-course.eu/python3_input.php

希望这有助于!

+0

OP正在做'person_age + 5',他声称给出错误 - 但不是,他的代码运行干净。在你的情况下,'age'是一个字符串,如果你试图添加5会引发OP的异常。他没有错误...但是这个答案确实有错误OP要求...但是我不认为这使它成为答案! – tdelaney

相关问题