エラー (または例外) をキャッチする小さなスクリプトを作成しています。しかし、例外が発生したときに、トレースバック、例外名、例外メッセージなどのすべての情報が必要です。例外がキャッチされなかった場合にも動作するはずですが、次のコードは影響を受けません (エラーは表示されるはずですが、スクリプトは動作を停止しません)。
例: 次のコードでは、例外がスローされます。それが起こった場合(そしてそれが起こった場合にのみ)、「クリーンアップ」を行いたいと思います。
try:
1 / 0
except Exception as e:
# Printing the Exception like it would have been done if the exception hadn't been caught:
# Traceback (most recent call last):
# File "<stdin>", line 1, in <module>
# ZeroDivisionError: integer division or modulo by zero
# With the traceback, the exception name and the exception message.
# Doing some additional stuff.
pass
スクリプトは非常にスマート (100 行以内) であり、私だけが使用するため、ロガーは使用しません。
編集:私はpython 2.xを使用しています