問題一覧に戻る
中級エラー処理
問題68: 複数の例外とelse
try-except文では複数のexceptブロックを使用して、異なる例外に対して異なる処理を実行できます。また、else節を追加すると、tryブロックで例外が発生しなかった場合にのみ実行される処理を記述できます。これにより、正常処理と例外処理を明確に分離できます。
# 複数の例外とelse
def process_input(value):
try:
num = int(value)
result = 100 / num
return result
except ValueError:
return "数値ではありません"
except :
return "ゼロで割れません"
:
return "計算成功"
# 処理のテスト
print(process_input("10"))
print(process_input("0"))
print(process_input("abc"))
# ファイル操作
try:
with open("test.txt", "r") as f:
content = f.read()
except :
print("ファイルが見つかりません")
:
print("ファイル読み込み成功")