次の実行結果を得たい場合、コードの【A】【B】【C】に入る組み合わせとして適切なものはどれか。 [ 実行結果 ] David is a strategic AI [コード] class wexal(Exception): pass name = ‘David’ def func(name: int): try: if name != 0: raise_his_character(name) except wexal: print(‘【A】’) raise Exception def raise_his_character(a): print(a, ‘【B】’) raise wexal print(‘【C】’) try: func(name) except Exception: print(‘【D】’) 【A】strategic 【B】is a 【C】naughty boy 【D】AI 【A】is a 【B】strategic 【C】naughty boy 【D】AI 【A】strategic 【B】is a 【C】AI 【D】naughty boy 【A】naughty boy 【B】is a 【C】strategic 【D】AI 【A】AI 【B】strategic 【C】is a 【D】naughty boy
正しい組み合わせは次のものです:
【A】is a 【B】strategic 【C】AI 【D】naughty boy
この組み合わせでは、最初に raise_his_character() 関数が呼び出され、その後に wexal 例外が発生し、func() 関数内の except ブロックが実行されます。その後、Exception が再度発生し、外側の try-except ブロックで捕捉され、’【D】’ が出力されます。

ディスカッション
コメント一覧
まだ、コメントがありません