ブログ編集長として、Python初心者が最もつまずきやすい「インデントエラー」をテーマにした記事の企画書を作成しました。執筆者やチームにそのまま共有できるフォーマットにしています。 — # Python初心者向けブログ記事 企画書 **テーマ:** IndentationError(インデントエラー)の解決法と、Python特有の字下げルール ### # 記事タイトル **【Python初心者必見】「IndentationError」で動かない?3分で解決する3つのチェックポイント** ### # ターゲット読者の悩みと投稿推奨日時 **ターゲット読者の悩み:** * 「入門書やネットのコードをそのまま書いた(コピペした)はずなのに、なぜかエラーが出る」 * 「英語のエラーメッセージ(expected an indented blockなど)が出た瞬間にパニックになり、学習のモチベーションが下がっている」 * 「半角スペースと全角スペースの違いや、Tabキーの扱いがよくわかっていない」 **投稿推奨日時:土曜日の13:00 または 金曜日の20:00** * **理由:** プログラミング初学者は、仕事や学校が休みになる週末(土日の午後)や、週末の夜に腰を据えて学習に取り組む傾向があります。学習の初期段階で必ず直面するエラーであるため、学習者が「今まさに困っている」タイミングで検索にヒットしやすく、SNS等でもシェアされやすいこの時間帯の公開を推奨します。 ### # 記事構成案 #### 1. 導入:読者の悩みに共感し、解決策を提示 * **共感:** 「プログラミングを始めてすぐ、真っ赤なエラー文字が出て心が折れそうになっていませんか?『本と同じように書いたのに!』と叫びたくなる気持ち、すごく分かります。」 * **安心感の提供:** 「実は『IndentationError』は、Pythonを始めた人の99%が最初につまずく、いわば”通過儀礼”です。あなたのPCが壊れたわけでも、才能がないわけでもありません。」 * **解決策の提示:** 「この記事では、なぜこのエラーが出るのか、そしてどうすれば一瞬で直せるのかを分かりやすく解説します。読み終える頃には、エラーが怖くなくなりますよ!」 #### 2. 本文:具体的なコード例と、手順を3つのステップで解説 * **ステップ1:エラーの正体「インデント(字下げ)」を知ろう** * 他の言語({}で囲む)と違い、Pythonは「行の先頭の空白(字下げ)」でブロックを認識するという独自のルールを図解で優しく解説。 * `IndentationError: expected an indented block` =「ここに空白(字下げ)が必要だよ!」というPythonからの優しいメッセージであることを伝える。 * **ステップ2:よくある「NGコード」で原因を特定しよう** * 初心者がやりがちなNG例を提示。 * *NG例1:そもそも字下げをしていない(if文やfor文の後にスペースがない)* * *NG例2:TabキーとSpaceキーを混ぜて使ってしまった* * *NG例3:見えない敵「全角スペース」が混入している* * 実際のNGコード(赤字やハイライトで強調)を提示し、読者のコードと見比べさせる。 * **ステップ3:正しいコードに修正しよう(解決の手順)** * **手順:** 1. エラーが出た行(またはその前の行)の先頭の空白を一旦すべて削除する(Backspace)。 2. 半角スペースを「4つ」入力して揃える(推奨ルールの紹介)。 3. プログラムを実行してエラーが消えたか確認する。 * 正しく動く「OKコード」を提示し、コピペして動かせる成功体験を提供する。 #### 3. まとめ:読者が次に取るべきアクション * **振り返り:** Pythonにおいて「空白(インデント)」はただの飾りではなく、意味を持つ重要なルールであることをおさらい。 * **次のアクションの提案:** 「今後このエラーで悩まないために、コードを書くエディタ(VSCodeなど)の設定で『空白文字(スペース)を見えるようにする設定』をオンにしましょう!」と提案し、設定手順の簡単な紹介や関連記事へのリンクへ誘導する。 — **編集長からのコメント:** この記事は「エラーの解説」ではなく「初心者のパニックを鎮める」ことを第一の目的として執筆してください。専門用語は極力避け、例え話(「インデントは段落の行頭一字下げみたいなものです」など)を交えながら、読者に寄り添うトーンで仕上げましょう。

執筆者:

カテゴリ:

# 【Python初心者必見】「IndentationError」で動かない?3分で解決する3つのチェックポイント

プログラミングの勉強を始めてすぐ、画面に真っ赤な英語のエラーメッセージが出てきて、心が折れそうになっていませんか?

「入門書とまったく同じように書いたはずなのに!」
「ネットのコードをコピペしただけなのに、なぜか動かない……」

そんな風に叫びたくなる気持ち、すごーーく分かります。英語のメッセージが出た瞬間にパニックになり、学習のモチベーションが下がってしまいますよね。

でも、**安心してください。**

実はこの「IndentationError(インデントエラー)」は、Pythonを始めた人の99%が最初につまずく、いわば**”通過儀礼”**です。あなたのパソコンが壊れたわけでも、あなたに才能がないわけでも絶対にありません!

この記事では、なぜこのエラーが出るのか、そして「どうすれば一瞬で直せるのか」を初心者の方に向けて分かりやすく解説します。読み終える頃には「なんだ、そんなことだったのか!」と、エラー画面が怖くなくなりますよ。

## ステップ1:エラーの正体「インデント(字下げ)」を知ろう

まず、エラーメッセージをよく見てみましょう。
こんなふうに書かれていませんか?

`IndentationError: expected an indented block`

これを見るとウッとなりますが、実はこれ、Pythonからの**「ここに空白(字下げ)が必要だよ!」**という優しいメッセージなんです。

国語の作文を書くとき、新しい段落の始まりは「一文字分スペースを空けて(字下げして)」書き始めますよね。これをプログラミング用語で**「インデント」**と呼びます。

他のプログラミング言語では、ひとまとめのグループを `{ }` のような記号で囲むことが多いのですが、Pythonは違います。Pythonは**「行の先頭の空白(インデント)」だけで、プログラムのグループを認識している**のです。

つまり、Pythonにおいて空白は「ただの見た目の調整」ではなく、「プログラムの動作を決める超・重要なルール」だということを覚えておきましょう!

## ステップ2:よくある「NGコード」で原因を特定しよう

では、どんな時にこのエラーが出るのでしょうか?
初心者がうっかりやってしまいがちな「3つのNGパターン」を紹介します。あなたのコードと見比べてみてくださいね。

### ❌ NG例1:そもそも字下げをしていない
一番多いのがこちらです。`if`(もし〜なら)や `for`(〜を繰り返す)といった文の後は、次の行を字下げする必要があります。

“`python
x = 10
if x == 10:
print(“xは10です!”) # ←NG!! 行の先頭に空白がない
“`

### ❌ NG例2:TabキーとSpaceキーを混ぜてしまった
一見きれいに字下げされているように見えても、ある行は「Tabキー」、別の行は「Spaceキー」で空白を作っていると、Pythonは「ルールが統一されていない!」と混乱してエラーを出してしまいます。

### ❌ NG例3:見えない敵「全角スペース」が混入している
日本語キーボードを使っていると起きやすい悲劇です。Pythonのインデントに**全角スペース( )は使えません。**必ず「半角スペース( )」を使う必要がありますが、見た目では区別がつきにくいため非常に厄介です。

## ステップ3:正しいコードに修正しよう(解決の手順)

原因がわかれば、直し方はとっても簡単です!
以下の3つの手順で、エラーをサクッと解決しましょう。

**【解決の手順】**
1. エラーが出た行(またはその上の行)の先頭にある空白を、**Backspaceキーで一旦すべて削除**します。(行の左端まで文字を詰めます)
2. パソコンの入力モードが「半角英数」になっていることを確認し、**Spaceキーをポン・ポン・ポン・ポンと「4つ」入力**します。(※Pythonでは「半角スペース4つ」で字下げするのが世界的な推奨ルールです!)
3. プログラムを再度実行します。

正しく修正できた**「OKコード」**はこちらです。ぜひコピペして、エラーが出ずに動く感動を味わってみてください!

“`python
x = 10
if x == 10:
print(“xは10です!”) # ←OK!! 半角スペース4つで字下げされている
“`

どうですか?無事に文字が表示されたのではないでしょうか!

## まとめ&次の一手:エディタの設定を見直そう

お疲れ様でした!今回のポイントを振り返りましょう。

* Pythonにおいて「空白(インデント)」はただの飾りではなく、プログラムの意味を決める重要ルール。
* エラーが出たら、まずは**「半角スペース4つ」**になっているか確認する!

無事にエラーを解決できたあなたに、今後もう二度とこのエラーで悩まないための「とっておきの対策」をお伝えします。

それは、コードを書くソフト(VSCodeなどのエディタ)の設定で、**「空白文字(スペース)を見えるようにする設定」をオンにする**ことです。
この設定をすると、半角スペースは「小さな点(・)」、全角スペースは「四角い枠(□)」などの記号で表示されるようになり、見えない敵が一目でわかるようになります!

VSCodeをお使いの場合は、設定画面で「Render Whitespace(空白のレンダリング)」を検索し、「all」に変更するだけで設定完了です。ぜひ今日から試してみてくださいね。

エラーは「あなたが成長するためのヒント」です。パニックにならず、一つずつ解消していけば必ず上達します。これからも一緒にPython学習を楽しんでいきましょう!

コメント

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA


投稿をさらに読み込む