[ホーム] - [よく見るエラーメッセージ一覧] - [If 条件式で IndentationError: expected an indented block エラーが出る場合の対処]

【Python】If 条件式で IndentationError: expected an indented block エラーが出る場合の対処 | if 判定文の使い方





作成日:2022/02/22

Python で if 文により条件式を記載した場合、次のエラーが発生する場合があります。


IndentationError: expected an indented block



主な原因はインデント (indented) です。
if文の条件で合致した場合の実行式がインデントされていません。「インデントのブロック (indented block) が存在しない」という意味です。

インデントする必要があります。
このエラーが発生するサンプルプログラムはif、print、elseがすべて同じ列から始まり全くインデントされていません。


【間違い】

x = 1

if x == 1:
print ("1 です")
else:
print ("1ではありません")

File "c:\temp\test.py", line 5
print ("1 です")
^
IndentationError: expected an indented block

【正しい】

x = 1

if x == 1:
print ("1 です")
else:
print ("1ではありません")

1 です

サンプルコード

以下は Windows 10 環境における正常実行可能なサンプルコードです。


Python 3.x における条件式の使いかたの紹介です。条件式には以下のような式が可能です。

(1) 等しい
a == b

(2) 異なる
a != b

(3) a が b よりも小さい
a < b

(4) a が b よりも大きい
a > b

(5) a が b 以下
a <= b

(6) a が b 以上
a >= b

サンプルコード:


#boolean 型を定義
x = True

if x == True:
print ("True です")
else:
print ("False です")



実行結果:

True です



Python 3.x elif else を使用した多段階の条件式です。
サンプルコード:


#if による条件式
a = 1

if a == 1:
print ("a は1です")

elif a == 2:
print ("a は2です")

elif a ==3 :
print ("a は3です")

else:
print ("a は1、2、3 以外です")


実行結果:

a は1、2、3 以外です







本サイト内掲載されている情報は、著作権法により保護されています。いかなる場合でも権利者の許可なくコピー、配布することはできません。 このページはリンクフリーです。(このページへの直接リンクも可能です。)

[ホーム] - [よく見るエラーメッセージ一覧]