2016-12-12 9 views
0

私はIPython(コンソール)からembed()を使用してスクリプトを操作しています。 CTRL + Dを押すたびに、対話モードを終了し、embed()コールに続く次の表明に進みます。PythonスクリプトをIPython(コンソール)から中止する方法

どうすればいいですか対話的なpythonからembed()の後でさらにコマンドを実行することを避ける完全なpythonスクリプトですか?

私が試してみました何

CTRL + Cを:のみIPython

CTRL + Dに私の現在のコマンドをキャンセルする:私のスクリプトの次のコマンドにIPythonと進行を残し

タイピング出口():ここで、CTRL + D

同じサンプルスクリプトです:

#!/usr/bin/env python 

from IPython import embed 

print 'hello world' 
embed() 
print 'I dont want to reach here if I decide to quit from the IPython terminal!' 
+0

あなたはiPythonノートブックについて話していますか?または単にiPythonコンソールですか? – user312016

+0

私はそれについて知らない。これをどうやってチェックするのですか? – rkioji

+0

@rkiokiどのようにiPythonを起動していますか? – user312016

答えて

1

一つの選択肢はIPythonセッションからプロセスIDをNukeのためにある:

$ python test_embed.py 
hello world 
Python 2.7.10 |Anaconda 2.3.0 (x86_64)| (default, May 28 2015, 17:04:42) 
Type "copyright", "credits" or "license" for more information. 

IPython 5.1.0 -- An enhanced Interactive Python. 
?   -> Introduction and overview of IPython's features. 
%quickref -> Quick reference. 
help  -> Python's own help system. 
object? -> Details about 'object', use 'object??' for extra details. 

In [1]: import os 

In [2]: os.kill(os.getpid(), 9) 
Killed: 9 

EDIT:Ctrl-\とSIGQUITを送信するように見えるにも完全にスクリプトを終了します。

+0

これは間違いなく動作しますが、ショートカット。 – rkioji

+0

'Ctrl- \'は私が探していたものです!完璧なおかげで。 – rkioji

関連する問題