【Pythonの基本】if文を使った条件分岐を徹底解説!比較演算子をMasterせよ

A(100円),B(200円),C(300円),3つの商品を売るお店を経営しているとしましょう。

  • A,B,C合計で20個以上買った場合、10%OFF
  • A,B,C合計で20個以上買ったかつ、Aを15個以上買った場合は、更に10%OFF

というキャンペーンをしました。

お客様が商品を持ってくるたびに、手作業で計算していたら、非効率ですし、計算ミスをして思わぬ損失を出してしまうかもしれません。

そんなときに、役立つのがプログラミングです。

プログラミングのif文(条件分岐)を利用することで、「○○のときは、××」という問題を簡単に解決することが出来ます。

比較演算子

if文(条件分岐)を使うために、必要な比較演算子

中学生の頃に習った不等号のようなものです。if文の前に、まずは、比較演算子を解説します。

プログラミングでは、2つのものを比較演算子で比較して、

  • 条件通りだった場合、True
  • 条件に反した場合、False

を返します。

このような形で、比較演算子の左と右を比較して、True,Falseのどちらかを返します。

比較演算子には、左のほうが大きい場合Trueを返す「>」や、左と右が等しい場合にTrueを返す「==」などがあります。以下が、よく使われる演算子の一覧です。

演算子 解説
X > Y XがYより大きい
X < Y XがYより小さい
X >= Y XはY以上
X <= Y XはY以下
X == Y XはYと同じ
X != Y XはYと異なる

 

条件分岐(if文)

上で説明した比較演算子を踏まえて、条件分岐(if文)を解説します。

if文は非常にシンプルで、

というように、条件がTrueを返せば、ifの中を、Falseを返せば、elseの中の処理を実行します。

例えば、XとYを比べるif文の場合

となります。

※elseを省略すると、条件に合わなかった場合は、何もおこりません。

and(かつ)とor(または)の利用

もし、「Xが10より大きい かつ 20より小さい場合」を判定したい場合は2つ方法があります。

ifを入れ子で使う

1つ目は、ifを入れ子(ネスト)で使う方法です。

このようにif文の中にif文を記述することで、条件を複雑にしていくことが出来ます。

and(かつ)を使う

2つ目は、「and」を使う方法です。

このように、andで条件文を繋いでいくことで、複数の条件を判定することが出来ます。

elifの使い方

Xが10より小さい または Xが20より大きいときに、「OK」と表示したい場合(違う場合は「NOと表示」)、どうすればいいでしょう?

というように、「or」を使用してもいいです。

orを使う以外にも「elif」という方法があります。この方法を使うと、

こういう書き方が出来ます。

上部のif文でFalseになってしまったものを再度条件式にかけて、Trueを返した場合にelif内の処理を行います。

この例で言うと、

  1. if(X < 10)の条件を判定。Trueの場合、if内の処理
  2. 1に合致しなかった場合、elif(X > 20)の条件を判定。
    Trueの場合、elif内の処理
  3. 1,2の条件に合致しなかった場合、else内の処理

という流れです。

条件分岐は避けては通れない道

条件分岐(if)はプログラミングをする上で、絶対に避けては通れない道です。

そして、if文はプロダクトを作っているときに頻出する構文です。if文をきれいに簡潔に書けるようになると、プログラムの実行速度は上がり、プログラムのメンテナンス性が向上します。

基本を疎かにせず、しっかりと条件分岐(if文)をMasterしましょう!

ABOUTこの記事をかいた人

新卒ノマドエンジニアとして独立し、半年で月収100万円を達成する。フリーランスのエンジニアとして活動しながら、事務所を売却(バイアウト)したり、Youtuber(最高月間視聴回数109万回、チャンネル登録者1万人)をしたり、Openrecの公式配信者としてゲーム生実況をしたり、ベンチャー企業のCOOをしたり、パラレルキャリアを歩んでいる。 2019年にミニマムライフコストを不労所得で稼げるようになったため、いまは好きなことだけ仕事にしています。