← クエスト一覧

クエスト38:例外の種類

スライド 1 / 5
コーデ
💻 コード例
実行結果
← クエスト一覧
🐍 Python / Quest 38 / 85

クエスト38:例外の種類

応用 +10 XP
🏠
今回の課題
int('abc') で起きるエラーの種類だけをキャッチして、「数字を入力してください!」と表示しよう。
📖 解説を見る
🛡️ 例外の種類を指定しよう!

except のうしろに例外の種類を書くと、その種類のエラーだけをキャッチできます。

✏️ よくある例外:
ValueError → int('abc') など値が不正
TypeError → 型が合わない
ZeroDivisionError → 0で割る
IndexError → リストの範囲外

✏️ 書き方(リストの範囲外をつかまえる例):
try:
    nums = [1, 2]
    print(nums[5])
except IndexError:
    print('その番号は無いよ')
 → その番号は無いよ
try の中で失敗しそうな処理を実行し、except のうしろにつかまえたい例外の種類を書きます。

📋 作るもの:
try の中で int('abc') を実行する
except のうしろに、その処理で起きる例外の種類を書く(上の「よくある例外」の一覧から選ぼう)
・つかまえたら「数字を入力してください!」と表示する

💡 どこで使う?

エラーの種類ごとにちがう対応をしたいときに使います。「数字じゃない→入力し直してもらう」「ファイルが無い→新しく作る」のように、原因に応じたメッセージや処理に分けられます。ユーザー入力のチェックでは欠かせません。

⚠️ ポイント:
except 例外名: でその例外だけをつかまえる
except を複数書けば、種類ごとに対応を分けられる
ヒントを見る
try の中に失敗する処理を書き、except のうしろに例外の種類を書くよ。int('abc') で起きるのがどれかは、説明の「よくある例外」の一覧から選ぼう。
期待する出力
数字を入力してください!
📄 見本
「答えを見る」を押すと、お手本のコードが出ます。クリックでコピーできます。
💻 コードエディタ
実行すると結果がここに表示されます
正解!見本と同じになりました。
次へ →
🏠 ホームへ

れんしゅうもんだい

☑ 0 / 3 正解 レッスンに戻る

全問正解でクエストクリア!

未挑戦

問題 1: 0で割るエラー(ZeroDivisionError)をキャッチして「0では割れません!」と表示しよう!

実行結果
実行できたよ!
もう一度チャレンジ!
📄 見本の出力
0では割れません!
未挑戦

問題 2: ValueErrorZeroDivisionErrorを別々にキャッチするコードを作って、int('x')のエラーを「値エラー!」と表示しよう!

実行結果
実行できたよ!
もう一度チャレンジ!
📄 見本の出力
値エラー!
未挑戦

問題 3: try/except/else/finallyを使って、10÷2が成功したら「結果:5」と表示し、最後に必ず「完了」と表示しよう!

実行結果
実行できたよ!
もう一度チャレンジ!
📄 見本の出力
結果:5 完了
コピーしました!