IndentationError: expected an indented block afterの原因を解説(Python)
今回はPythonのエラー(IndentationError)について解説します。
このエラーはインデント(先頭に入れるスペース)がおかしいときに発生します。
Pythonは他の言語と違い、インデントによってプログラム制御を行います。
そのため、インデントの数が間違っているとエラーが発生します。
エラーサンプルとともに、何が原因なのか紹介するので確認してみてください。
IndentationErrorの原因と解決策
for i in range(5):
print(i) # この行はインデントエラーを引き起こします
例えば、このようなコードを書くとIndentationErrorが発生します。
原因はfor文の後でインデントを下げていない(=スペースを入れていない)ためです。
for i in range(5):
print(i) # インデントエラーは発生しない
このようにfor文の後でインデントを下げればエラーは発生しません。
Pythonではforやifなどの制御構文は中身のインデントを下げる必要があります。
(そして、インデントの下がっている箇所を制御構文の中身と判断します)
そのため、インデントが正しくないとエラーで教えてくれるわけです。
IndentationErrorが発生したら、インデントが間違っていないか確認してみましょう。
他にも次のようなインデントもエラー原因となるので、エラーが発生したら確認してみてください。
- インデントに全角スペースを使っている
- インデントのスペースの数が場所によって違う