【发布时间】:2017-04-21 19:43:05
【问题描述】:
内置函数 quit() 在 Python-3.x 和 IPython 3 中的行为不同。如果在 IPython 中执行,以下代码将打印 Hello,但在 Python 中不会打印任何内容:
quit()
print("Hello")
quit() 在 IPython 中的用途是什么?改变其行为的原因是什么?
【问题讨论】:
-
是为了退出翻译会话...?这对我行得通。无论如何,说普通交互式 Python 解释器 REPL 和 IPython 之间的区别可能更准确。 IPython 与 Python 3.x 没有区别...无论如何,您实际上是在使用
ipython运行脚本吗?quit函数只是用于退出 python shell 会话,无论如何都不应该在脚本中使用。 -
@juanpa.arrivillaga 由于打印了“Hello”,IPython 中的显然 quit() 并没有真正退出解释器——至少不是立即退出。
-
如果您在解释器 shell 会话 中,它会这样做,这就是它的本意。这可能是一个松散的结局,因为没有人认为您会在交互式提示之外使用
quit。 -
如果我在 shell 中输入
quit();print(10),它仍然会在退出前打印 10。 -
好吧,ShadowRanger 调查了它并发布了一个看起来很完整的答案。反正
quit不是内置函数。
标签: python python-3.x ipython exit