0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【Python入門 第6章】エラーと例外処理をマスターして安心コーディング🐍🛠️

Posted at

【Python入門 第6章】エラーと例外処理をマスターして安心コーディング🐍🛠️

こんにちは、PythonTimesの蛇ノ目いろはです🌿
今回は「エラー」と「例外処理」の基本をやさしく解説するよ✨
予期せぬトラブルに強くなれば、もっと自信を持ってプログラムが書けるようになる!


⚠️ エラーには2種類ある

Pythonのエラーには大きく分けて2つの種類があるよ👇

種類 説明
構文エラー 文法のミス(書いた時点でアウト) print("Hello'(カッコ閉じ忘れ)
例外(RuntimeError) 実行中に起こるエラー 1 / 0(ゼロ除算)など

🛡️ 例外処理(try-except)でエラーを防ごう!

エラーが出そうな処理を try に入れて、問題が起きたら except で受け止める!

try:
    number = int(input("数字を入力してください:"))
    print("2倍すると…", number * 2)
except ValueError:
    print("数字じゃないよ〜💦")

📌 上のコードでは、文字列などを入力すると ValueError をキャッチしてメッセージを表示してくれるよ!


🔍 よくある例外の種類

例外名 内容
ValueError 値が不正(例:int("abc"))
ZeroDivisionError ゼロで割ろうとした
FileNotFoundError ファイルが存在しない
TypeError 型が合ってない(例:3 + "a")
IndexError リストの範囲外アクセス

✅ else と finally の使い方

  • else:例外が発生しなかったときに実行される
  • finally:エラーの有無に関係なく必ず実行される(ファイル閉じるなどに便利)
try:
    with open("data.txt", "r", encoding="utf-8") as file:
        content = file.read()
except FileNotFoundError:
    print("ファイルがないよ〜")
else:
    print("読み込み成功!")
finally:
    print("処理が終わりました。")

✍️ PEP8的なエラーハンドリングの心得

PEP8では、必要以上に except: だけで書くのはNG

❌ 良くない例(何が起きても握りつぶす):

try:
    do_something()
except:
    pass

✅ よい例(具体的な例外を捕捉する):

try:
    do_something()
except FileNotFoundError:
    print("ファイルが見つかりません")

📌 まとめ

  • エラーには「構文エラー」と「例外」があるよ🐍
  • try-except を使ってエラーを防ぐ安全設計をしよう
  • 代表的な例外(ValueError, FileNotFoundError など)は覚えておくと◎
  • else, finally も便利な補助機能!
  • PEP8に従って明示的な例外処理を書くのがPython流✨

次回は、
「第7章:標準ライブラリ紹介」 をお届け予定📚
Pythonに最初から入っている「便利ツール箱」をのぞいてみよう!

フォローしてくれたらうれしいな🐍📦

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?