ipython: exit() 语句未按预期工作
ipython: exit() statement not working as expected
我正在 运行 将脚本写入 ipython (1.2.1),如果不满足特定条件,我需要它停止。我尝试使用 exit() 语句,但它没有按预期运行。
以我调用的以下脚本为例 test.py
:
if(True):
print('Error')
exit()
print('Still here!')
当我 运行 使用 python test.py
时,我得到:
$python test.py
Error
然后如预期的那样执行终止。
但是如果我使用 run -i test.py
从 ipython 运行 它,那么我得到:
In [1]: run -i test.py
Error
Still here!
最后ipython的执行结束。问题是,在这种情况下,第二个 print 语句仍在执行,而我需要在遇到 exit() 语句时立即终止脚本的执行。
为什么会这样,我怎样才能得到我想要的结果? (我是运行宁python2.7.6)
exit()
单独用于 REPL,并不真正用于脚本。
在 import sys
之后尝试使用 sys.exit(0)
,当然
我正在 运行 将脚本写入 ipython (1.2.1),如果不满足特定条件,我需要它停止。我尝试使用 exit() 语句,但它没有按预期运行。
以我调用的以下脚本为例 test.py
:
if(True):
print('Error')
exit()
print('Still here!')
当我 运行 使用 python test.py
时,我得到:
$python test.py
Error
然后如预期的那样执行终止。
但是如果我使用 run -i test.py
从 ipython 运行 它,那么我得到:
In [1]: run -i test.py
Error
Still here!
最后ipython的执行结束。问题是,在这种情况下,第二个 print 语句仍在执行,而我需要在遇到 exit() 语句时立即终止脚本的执行。
为什么会这样,我怎样才能得到我想要的结果? (我是运行宁python2.7.6)
exit()
单独用于 REPL,并不真正用于脚本。
在 import sys
之后尝试使用 sys.exit(0)
,当然