3.23.1 対話的なインタプリタオブジェクト

runsource( source[, filename[, symbol]])
インタプリタ内のあるソースをコンパイルし実行します。引数はcompile_command()のものと同じです。filenameのデフォルトは'<input>'で、symbol'single'です。あるいくつかのことが起きる可能性があります:

次の行を要求するためにsys.ps1sys.ps2のどちらを使うかを決定するために、戻り値を利用できます。

runcode( code)
コードオブジェクトを実行します。例外が生じたときは、トレースバックを表示するためにshowtraceback()が呼び出されます。伝わることが許されているSystemExitを除くすべての例外が捉えられます。

KeyboardInterruptについての注意。このコードの他の場所でこの例外が生じる可能性がありますし、常に捕らえることができるとは限りません。呼び出し側はそれを処理するために準備しておくべきです。

showsyntaxerror( [filename])
起きたばかりの構文エラーを表示します。複数の構文エラーに対して一つあるのではないため、これはスタックトレースを表示しません。filenameが与えられた場合は、Pythonのパーサが与えるデフォルトのファイル名の代わりに例外の中へ入れられます。なぜなら、文字列から読み込んでいるときはパーサは常に'<string>'を使うからです。出力はwrite()メソッドによって書き込まれます。

showtraceback( )
起きたばかりの例外を表示します。スタックの最初の項目を取り除きます。なぜなら、それはインタプリタオブジェクトの実装の内部にあるからです。出力はwrite()メソッドによて書き込まれます。

write( data)
文字列を標準エラーストリーム(sys.stderr)へ書き込みます。必要に応じて適切な出力処理を提供するために、導出クラスはこれをオーバーライドすべきです。

ご意見やご指摘をお寄せになりたい方は、 このドキュメントについて... をご覧ください。