Python|異常発生


ターゲット:例外が発生しない理由を理解する...

try:
    x = int(input('3의 배수를 입력하세요: '))
    if x % 3 != 0:                                 # x가 3의 배수가 아니면
        raise Exception('3의 배수가 아닙니다.')        # 예외를 발생시킴
    print(x)
except Exception as e:                             # 예외가 발생했을 때 실행됨
    print('예외가 발생했습니다.', e)
    
def three_multiple():
    x = int(input('3의 배수를 입력하세요: '))
    if x % 3 != 0:                                 # x가 3의 배수가 아니면
        raise Exception('3의 배수가 아닙니다.')    # 예외를 발생시킴
    print(x)                                       # 현재 함수 안에는 except가 없으므로
                                                   # 예외를 상위 코드 블록으로 넘김
 
try:
    three_multiple()
except Exception as e:                             # 하위 코드 블록에서 예외가 발생해도 실행됨
    print('예외가 발생했습니다.', e)

[コードの説明]
1.three multiple関数にはtryがありますが、存在しない場合はhighにより異常が発生します
2.関数外での異常処理
  • 異常が発生した場合でも、現在のコードブロックにexceptが処理可能でない場合は、exceptが発生するまで上流のコードブロックに移動し続けます.
    外に処理するものがない場合は、コード実行が停止し、エラーが表示されます.