Pythonで例外処理(try-except)する方法

投稿者: | 2020年3月1日

Pythonで例外処理(try-except)する方法です

try実行中に例外を補足する

try:
    x = 1
    y = 0 
    z = x / y
except:                     # try実行中に例外を補足する
    print("except")

try実行中に特定の例外を補足する

try:
    x = 1
    y = 0 
    z = x / y
except ZeroDivisionError:   # try実行中に特定の例外を補足する
    print('ZeroDivisionError')

特定の例外を複数補足する場合

try:
    x = 1
    y = 1 
    z = x / y
    file = open('???.txt')
except ZeroDivisionError:   # 特定の例外を複数補足する場合
    print('ZeroDivisionError')
except OSError:             # 特定の例外を複数補足する場合
    print("OSError")

例外を発生させる場合は、raise

try:
    raise ZeroDivisionError # 例外を発生させる場合は、raise
except ZeroDivisionError:
    print('raise')

例外を補足しない場合は、pass

try:
    x = 1
    y = 0 
    z = x / y
except ZeroDivisionError:
    pass                    # 例外を補足しない場合は、pass

例外が発生しなかった場合は、else

try:
    x = 1
    y = 1 
    z = x / y
except ZeroDivisionError:
    print('ZeroDivisionError')
else:
    print('else')           # 例外が発生しなかった場合は、else

例外の発生有無に関わらず処理を行う場合は、finally

try:
    x = 1
    y = 1 
    z = x / y
except ZeroDivisionError:
    print('ZeroDivisionError')
finally:
    print('finally')        # 例外の発生有無に関わらず処理を行う場合は、finally