\

Pythonでは、無限ループを作成する際にwhile True:をよく使用します。しかし、この無限ループを終了するためにはどうすればよいのでしょうか。その答えは、キーボードからの割り込み(Ctrl-C)を捕捉することです。

Ctrl-Cとは何か

Ctrl-Cは、キーボードからの割り込み信号(SIGINT)を発生させるショートカットキーです。この割り込み信号は、現在実行中のプロセスを終了させるために使用されます。

PythonでのCtrl-Cの取り扱い

Pythonでは、Ctrl-Cが押されるとKeyboardInterrupt例外が発生します。この例外を捕捉することで、無限ループを終了させることができます。

以下に、KeyboardInterrupt例外を捕捉して無限ループを終了させるPythonコードの例を示します。

try:
    while True:
        # 何らかの処理
        pass
except KeyboardInterrupt:
    print('Ctrl-Cが押されました!')

このコードでは、try/exceptブロックを使用してKeyboardInterrupt例外を捕捉しています。while True:で無限ループを作成し、その中で何らかの処理を行います。Ctrl-Cが押されると、KeyboardInterrupt例外が発生し、exceptブロックが実行されます。この結果、無限ループが終了し、メッセージが表示されます。

注意点

ただし、KeyboardInterrupt例外を捕捉する方法は、シェルから切り離されたバックグラウンドジョブではSIGINTを捕捉できないという制限があります。通常のシチュエーションであれば、まずKeyboardInterruptを使用して問題ないと思います。

以上、Pythonで無限ループをCtrl-Cで終了する方法について説明しました。この知識を活用して、Pythonプログラミングをより効率的に行いましょう。

投稿者 admin

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です