-1

我正在手机上测试这个 QPython 应用程序,我有以下代码:

#-*-coding:utf8;-*
#qpy:console
#qpy:2

numOne = 1
numTwo = 2

person = str(input("What's your name?")) 
print "Guess what I can do?" 
print "Hello,", person

但是,它返回一个错误:

> hipipal.qpyplus/scripts/.last_tmp.py"    <
What's your name?jason
Traceback (most recent call last):
  File "/storage/emulated/0/com.hipipal.qpyplus/scripts/.last_tmp.py", line 8, in <module>
    person = str(input("What's your name?"))
  File "<string>", line 1, in <module>
NameError: name 'jason' is not defined
1|u0_a320@hltetmo:/ $

抱歉,如果格式已关闭,我会在旅途中通过手机发布此内容。

4

1 回答 1

2

您正在使用 Python2,input()将评估输入;这意味着当您键入 时jason,它会尝试查找名为 的变量jason,并且由于它不存在,因此您会遇到异常。You should raw_input,它将输入作为字符串返回:

>>> input('hello: ')
hello: jason
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "<string>", line 1, in <module>
NameError: name 'jason' is not defined
>>> raw_input('hello: ')
hello: jason
'jason'

在 Python3 中,它将按预期工作:

>>> input('hello: ')
hello: json
'json'
于 2014-10-02T21:48:35.813 回答