PythonでZeroDivisionError例外をキャッチする方法は?
除算演算の分母にゼロが表示されると、ZeroDivisionErrorが発生します。
例外を処理してそのタイプを見つけるために、指定されたコードを次のように書き直します。
import sys try: x = 11/0 print x except Exception as e: print sys.exc_type print e
<type 'exceptions.ZeroDivisionError'> integer division or modulo by zero
-
PythonでIOError例外をキャッチする方法は?
IOError例外 存在しないファイルを開こうとしたときのprintステートメントやopen()関数など、入出力操作が失敗したときに発生するエラーです。また、オペレーティングシステム関連のエラーに対しても発生します。 指定されたコードがtryブロックで記述されている場合、入出力例外が発生します。これは、以下に示すように、exceptブロックで処理されます。 例 import sys def whatever(): try: f = open ( "foo.txt", 'r' ) except IOError, e: print e print sys.
-
PythonでKeyError例外をキャッチする方法は?
辞書のキーとして値が見つからない場合、KeyErrorが発生します。指定されたコードは、例外をキャッチしてそのタイプを見つけるために次のように書き直されます。 例 import sys try: s = {'a':5, 'b':7}['c'] except: print (sys.exc_info()) 出力 (<type 'exceptions.KeyError'>, KeyError('c',), <traceback object at 0x0000000003203748&g