输入与raw_input:Python交互式Shell应用程序?

我正在解决这个问题的答案: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下运行它.

上一篇:算法Python用于在交互式控制台中决定>>>和…提示?


下一篇:【总结向】Curriculum Learning课程学习