ブログ編集長、お疲れ様です!
企画書を拝見しました。ターゲットの悩みやペルソナ、そして挫折しやすい絶妙なタイミング(日曜の夕方や平日の夜)をしっかり捉えた、非常に素晴らしい企画ですね。
この時間帯に一人で悩んで「自分は向いてないかも…」と落ち込みかけている読者の心に寄り添い、「なんだ、そんなことだったのか!」とパッと視界が開けるような、温かくて具体的な記事を作成しました。
以下が記事の本文となります。ぜひご確認ください!
—
# 「IndentationErrorが出た…」Python初心者がハマる”空白の罠”を3ステップで完全解決!
「よし、順調に進んできたぞ!」と思っていた矢先、突然画面に表示される `IndentationError: expected an indented block` という赤い文字……。
「教本通りに一文字ずつ打ち込んだはずなのに、どうして?」
「どこが間違っているのか全然分からない。私、プログラミングに向いてないのかな……」
そんな風に悩んでいませんか?
せっかく貴重な時間を使って頑張って勉強しているのに、エラーでピタッと止まってしまうと心が折れそうになりますよね。
でも、安心してください!
実はこのエラー、**Pythonを始めた人の9割が一度はぶつかる壁**なんです。
あなたの論理的思考力がないからでも、才能がないからでもありません。原因はただ一つ、**「行の先頭の空白(インデント)のズレ」**だけなのです。
この記事を読めば、たった3つのステップでインデントエラーを確実に見つけ出し、一瞬で修正できるようになります。さっそく一緒に解決していきましょう!
—
## なぜエラーになるの?まずは「空白の罠」をチェック!
まずは、あなたが直面している状況を一緒に確認してみましょう。
以下の「NGなコード」と「OKなコード」を見比べてみてください。
“`python
# ❌ NGなコード(エラーが出る)
age = 20
if age >= 18:
print(“大人です”) # ←ここに空白がないからエラーになる!
# ⭕️ OKなコード(正しく動く)
age = 20
if age >= 18:
print(“大人です”) # ←半角スペース4つの空白がある
“`
違いは分かりましたか?
そう、`print(“大人です”)` の前にある**「空白」**があるかないか、ただそれだけなんです。
それでは、このエラーをサクッと直すための3ステップを解説します!
—
## 解決のための3ステップ
### ステップ1:エラーメッセージから「何行目」か特定する
画面がエラー文だらけだとパニックになってしまいますが、見るべきポイントは1カ所だけです。
エラー文の一番下あたりにある **`line 〇`** (〇には数字が入ります)という部分を探してください。
例えば `line 3` と書いてあれば、「3行目の空白がおかしいよ!」とPythonが優しく教えてくれています。これで、どこを直せばいいのか迷子にならずに済みますね。
### ステップ2:コロン(`:`)の次の行が「字下げ」されているか確認する
何行目か分かったら、今度はその**1つ上の行**を見てみましょう。
`if` や `for`、`def` といった言葉が使われていて、行の最後が **コロン(`:`)** で終わっていませんか?
Pythonには、**「末尾に `:` がある行の次の行は、必ず右にズレていなければならない(字下げ・インデント)」** という絶対ルールがあります。
「ここから先は、この条件のグループだよ」というまとまりを、Pythonは**先頭の空白の数**で判断しているのです。
### ステップ3:「半角スペース4つ」に統一して打ち直す
「ちゃんと空白を空けているのにエラーが消えない!」という場合、ここが一番の落とし穴です。以下のどちらかが原因の可能性が高いです。
1. **「半角スペース」と「Tab(タブ)キー」が混ざっている**
2. **「全角スペース( )」が混ざっている**
Pythonは見た目が同じ空白でも、入力したキー(中身)が違うと「ルール違反!」と怒ってしまいます。特に日本語入力モードのままスペースを押してしまう**「全角スペース」は、目視では絶対に気づけない最大の罠**です。
**【確実な直し方】**
エラーが出ている行の先頭に行き、**BackSpaceキーで空白を一度「すべて」消してください。**
文字が左端にくっついたら、**「半角スペースを4回」**押して右にズラしましょう。(またはTabキーを1回押すルールで統一してもOKです!)
この手順を踏めば、見えない全角スペースやタブの混在がリセットされ、エラーは魔法のように消え去ります!
—
## まとめ:IndentationErrorは怖くない!
お疲れ様でした!今回のおさらいです。
* **原因はプログラムのバグではなく、ただの「空白のズレ」**
* **コロン(`:`)の次の行は、右にズラす(インデントする)のがPythonの絶対ルール**
* **直すときは、一度空白を全部消して「半角スペース4つ」を入れ直す**
エラーの正体が分かれば、ちっとも怖くないですよね。
さあ、**今すぐあなたの画面に戻って、`line 〇` の空白を一度消してから半角スペースを4つ入れてみてください。**きっと、思い描いた通りにプログラムが動き出すはずです!
**💡 おまけ:エラーを未然に防ぐ便利ツール**
「空白の数を毎回数えるのは面倒…」「全角スペースを一目で分かるようにしたい」という方は、**VSCode(Visual Studio Code)** などの便利なコードエディタを使うのが圧倒的におすすめです!
インデントがズレていると自動で波線を引いて教えてくれたり、Tabキー一発で自動的に半角スペース4つ分を入力してくれる機能があります。
「まだ使っていない」「もっと快適な環境でプログラミングしたい!」という方は、ぜひこちらの環境構築記事もチェックしてみてくださいね。
👉 [【初心者向け】VSCodeのインストールとPythonの初期設定まとめ(※内部リンク想定)]
—
あなたのプログラミング学習を、これからも応援しています!少しずつ、自分のペースで前へ進んでいきましょう!
コメントを残す