Python if文の条件分岐(==,!=,and,or,not)の基本

Pythonのif文の条件分岐には様々な条件分岐があります。

条件分岐で使用する「==、!=、<=、>=、and、or、not」の使い方の例をいくつか紹介します。

ここではif分の条件分岐の基本パターンを解説します。

Python if文

if構文

# if文
if 条件式1:
    条件式1がtrueの場合の処理
else:
    条件式1がfalseの場合の処理
if 条件式1:
    条件式1がtrueの場合の処理
elif 条件式2: 
    条件式2がtrueの場合の処理 
else:
    条件式1・2がfalseの場合の処理

if文のポイント

PythonでIF文のポイントは「条件式」の後に「:」(コロン)をつけます。処理は4つの空白(スペース)を入れて必ずインデントします。

IF文の条件式を複数つなげる場合は「elif」の後に条件式を記述します。

どの条件にも合致しない場合の処理は「else:」以降に記述します。

if文の条件式

Pythonの条件式で使う不等号には下記の種類があります。

記号 意味
== 等しい
!= 等しくない
< 小さい
> 大きい
<= 以下
>= 以上
is 等しい(オブジェクト)
not is 等しくない(オブジェクト)

条件式の判定は下記を使います。

記号 意味
式1 and 式2 式1と式2がTrue
式1 or 式2 式1もしくは式2がTrue
not 式1 式1がFalse

 

条件一致if文(==)

num = 1

if num == 1:
    print('OK')
else:
    print('NG')
#[結果] 'OK'

PythonでシンプルなIF文を作成しました。if文の条件一致は「==」(イコール・イコール)を使います。

条件「num1」が「1」であれば「OK」を、そうでない場合は「NG」を出力するIF文です。

否定条件if文(!=)

num = 1

if num != 1:
    print('OK')
else:
    print('NG')
#[結果] 'NG'

条件で否定形「!=」を使いました。「num != 1」は「num」が「1」でないという意味です。

「num」が「1」でないなら「OK」を、そうでない場合は「NG」を出力するIF文です。

不等号 if文(>=,<=)

num = 10

if num >= 1:
    print('OK')
#[結果] 'OK'

条件式「num >= 1」は「numが1以上だったら」という意味です。

numは10なので「OK」が出力されました。

and

num = 10

if num >= 1 and num < 10:
    print('OK')
else:
    print('NG')
#[結果] 'NG'

条件式「num >= 1 」と「num < 10」を「and」で複合条件にしました。これはこの2つの条件に合致したら「OK」を出力し、合致しなければ「NG」を出力します。

「num >= 1 and num < 10」は「numが1以上かつ10未満」という意味です。(10は含みません)

numは10なので「NG」が出力されます。

or

num = 1

if num == 1 or num == 2:
    print('OK')
else:
    print('NG')
#[結果] 'OK'

条件式「num == 1 」と「num == 2」を「or」で複合条件にしました。これはこの2つの条件のどちらかに合致したら「OK」を出力し、合致しなければ「NG」を出力します。

「num == 1 or num == 2」は「numが1もしくは2」という意味で、numは1なので「OK」が出力されます。

not

flg = True

if not flg:
    print('OK')
else:
    print('NG')
#[結果] 'NG'

ここでは「not」を使いました。「not ~」はif文の条件否定です。

条件式「not flg」は「flgがFalse」という意味で、flgはTrueなので「NG」が出力されます。

「if not flg」は「if flg == False」とも書けます。

andを省略するif文

num1 = 1
num2 = 2
num3 = 3

if num1 < num2 == num3:
    print('OK')
else:
    print('NG')
#[結果] 'NG'

ここではif文の条件式を通常は「and」でつなげるところを省略しました。pythonではこういった書き方もできます。

「num1 < num2 == num3」は「num1 < num2 and num2 == num3」という意味です。

 

以上、Pythonのif文の条件分岐(==、!=、<=、>=、and、or、not)の基本をいくつか解説しました。

コメント