Pythonでは、try
とfinally
を使用することで、例外が発生しても必ず特定のコードを実行することができます。これは、リソースのクリーンアップなど、例外の発生に関係なく実行されるべき処理に対して非常に有用です。
例えば、データベースのクエリを実行する際には、クエリの実行が成功したかどうかに関係なく、カーソルを閉じる必要があります。このような場合、try
とfinally
を使用すると、例外が発生した場合でもカーソルが閉じられることを保証できます。
try:
some_cursor.execute(sql_query)
finally:
some_cursor.close()
上記のコードでは、execute
メソッドが例外を発生させた場合でも、finally
ブロックが実行され、カーソルが閉じられます。
一方、try
ブロックなしで同じ処理を行った場合、execute
メソッドが例外を発生させると、プログラムはclose
メソッドに到達する前に終了します。
some_cursor.execute(sql_query)
some_cursor.close()
このように、try
とfinally
を適切に使用することで、リソースのクリーンアップを確実に行うことができます。except
ブロックを使用して例外を捕捉しなくても、finally
ブロックは常に実行されます。
以上の情報を踏まえて、Pythonのtry
とfinally
、そしてexcept
なしの使用について理解を深めてみてください。