当サイトについて知りたい方はこちら

Python入門: 条件分岐ifを攻略

今回は、「条件分岐」について学習します。条件分岐は「もし~なら-する」といった動作を指します。

条件分岐について

条件分岐と聞くと、とても難しそうに聞こえますが、理解してしまえばとても簡単です。道ばたを歩いている様子を想像してみてください。道路を歩いていると、道が複数に分岐している十字の交差点に差し掛かったとします。右方向の道にはコンビニが、左方向には牛丼屋があります。この時、もしも牛丼を食べたいと思えば左側に、コンビニで何か買いたいと思えば右側に、どちらでもない時はそのまま真っすぐに進むでしょう。

条件分岐を道路に見立てて考える

プログラミングにおける条件分岐、ifもこれと同じです。

ifの基本的な構造

ifを書く際には、条件と、条件を満たしている時の動作をコードに書きます。

if 条件:
 条件を満たしている場合、行いたい処理

条件が1つの場合

例えば、整数aが偶数であれば”even”(偶数)、そうでなければ”odd”(奇数)と出力したい場合を考えます。この時、条件は「aが偶数である」のみであるため、シンプルな形で実装できます。

a = 10 #整数aを用意しておく
if a % 2 == 0: #aが2で割り切れる場合
    print("even")
else: #それ以外の場合
    print("odd")

条件が1つだけしか存在しない場合は、ifとelseだけを使えば良いです。

条件分岐が複数ある場合

先ほどよりもやや複雑になるよう、条件を複数用意します。次は、整数aが2で割り切れる場合は整数「2」を、3で割り切れる場合は整数「3」を、5で割り切れる場合は整数「5」を出力したいと思います。

a = 5
if a % 2 == 0: #条件1
  print(2)
elif a % 3 == 0: #条件2
  print(3)
elif a % 5 == 0: #条件3
  print(5)

先ほどにはない、”elif”という文字列が出てきました。elifは、”else if”の略であり、条件を複数用意したい時に使えます。「AかBか」といった単純な条件分岐でなく、「AかBか、それともCか」というような複雑な条件分岐を扱う際に便利です。

AかつBならば~、 AもしくはBならば~を実装

整数aが2で割り切れ、かつ10より小さい場合に”OK”と出力したい場合を考えます。このような条件分岐を、Pythonではanを使って表現できます。

a = 8
if a % 2 == 0 and a < 10:
    print("OK")

整数aが2で割り切れる、もしくは3で割り切れる場合に、”OK”と出力したい。このような時は、orを使って表現できます。

a = 10
if a % 2 == 0 or a % 3 == 0:
    print("OK")

andやorは日本人にも馴染みが深い英単語なので、感覚的に理解しやすいと思います。

~でなければ

~でなければーするといった処理も実装可能です。notを使います。

a = 5
if not a % 2 == 0: #aが2で割り切れなければ
    print("OK")

条件分岐のまとめ

if 条件:
    条件が成立する場合の処理
else:
    それ以外の場合に行う処理
  • 基本、ifとelseから構成される
  • 条件分岐が複数ある際は、elifを使う
  • AかつBならば → if A and B
  • AまたはBならば →if A or B
  • Aでなければ → if not A

タイトルとURLをコピーしました