我正在解决这个问题的答案:Python Interactive Shell Type Application
我的代码看起来像这样
def main():
while True:
s = input('> ')
if s == 'hello':
print('hi')
if s == 'exit':
break
if __name__ == "__main__":
main()
如果我运行它,并输入hello,我得到
File "<string>", line 1, in <module>
NameError: name 'hello' is not defined
我应该如何监听文本,并根据结果调用不同的函数?
解决方法:
您在Python 2.x下运行它,其中input()实际上评估您键入的内容为Python表达式.因此,它正在寻找一个名为hello的变量,并且,由于您没有定义一个,它会抛出错误.要么使用Python 3.x,要么使用raw_input().
从你打印的括号中我假设你打算在Python 3.x下运行它.