[ホーム] - [よく見るエラーメッセージ一覧] - [if 文で syntaxerror invalid syntax が発生するよくある理由]

【Python】if 文で syntaxerror invalid syntax が発生するよくある理由 | if 判定文の使い方





作成日:2022/02/22


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


SyntaxError: invalid syntax



文字通り"invalid syntax"ということなので文法エラーということです。
コードのどこかに文法のエラーがあるということです。

よくある間違いはif 文の最後のコロン (:) です。コロンが抜けていて文法エラーとなる場合が非常に多く感じます。
Python における if 条件式の書式は次の通りです。(if , elif , else 全ての最後にコロンが付きます)


if 条件式1:
処理1
elif 条件式2:
処理2
elif 条件式3:
処理3

・・・
else:
どれにも該当しない場合の処理





【間違い】


x = 1

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

File "c:\temp\test.py", line 5
if x == 1
^
SyntaxError: invalid syntax

【正しい】

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 以外です







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

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