すべてのドキュメントが教えてくれるのは、
ユーザーが割り込みキー (通常は
Control-C
またはDelete
) を押したときに発生します。実行中、定期的に割り込みのチェックが行われます。
しかし、コードの観点からすると、いつこの例外を確認できますか? ステートメントの実行中に発生しますか? ステートメント間のみ?式の途中で発生することはありますか?
例えば:
file_ = open('foo')
# <-- can a KeyboardInterrupt be raised here, after the successful
# completion of open but prior to the try? -->
try:
# try some things with file_
finally:
# cleanup
このコードはタイミングの良いときにリークしKeyboardInterrupt
ますか? それとも、いくつかのステートメントまたは式の実行中に発生しますか?