Python if文を理解する

この記事の内容
  • Pythonのifを扱う方法
  • Python if

この記事の対象者
  • Pythonエンジニア
  • Pythonの学習者

この記事の構成
  1. if文について
  2. if, elif, else
  3. 適切なifの書き方

はじめに

if文は、プログラミングにおいてもっとも基礎的なプログラムの一種です。

プログラミングは ~なら~になるのような仕組みを作るようなものですが、

プログラム処理を考える時、特に学習を始めたばかりの時は
もし値が1なら~ のように先に言葉で考えてプログラムを考えるとスムーズにプログラムを書くことができます。

その中でif文は基礎の基礎であり、分岐処理だとと呼ばれます。

if文について

Pythonでifを扱う方法はいたってシンプルです。

num = 1
if num == 1:
    print("Hello World!")   
# 出力結果
Hello World!

if が Trueなら処理が動く

真偽値(True/False)と呼ばれ、Booleanというデータの型がPythonには存在します。

例えば、

A = 1
B = 1
print(A == B)

とすると

# 出力結果
True

となります。

これはどういうことかというと、AはBである をPythonではTrueと表します。

反対に、AはBでない場合は、Falseが返ります。偽という意味です。

このTrue / False を理解するのがif文において始めの一歩になります。

if A: の時に、AがTrueになれば、その処理が走ります。

では、PythonにおいてTrueになるのはどのようなケースでしょうか?具体的には以下のような場合です。

  • if に続く処理が正しい時
  • AそのものがTrueの時(if True:)
  • Aに何か値がある時
  • 数字の場合に、Aが1以上である時(0はFalseになる)
  • Aがリスト(配列)で、それが空でない時

などなどです。

これらを理解して、ifの分岐処理を書いていけば良いでしょう。

word = "hello world"
if word:
    print(word)
# 出力結果
hello world
num = 0
if num:
   print('ok')
# 出力結果

if, elif, else

if A:がもしTrueを返さない場合、別の条件を elif で指定することができます。
そして、最終的にどの条件にもTrueにならなかった場合、elseを記述することでその中で処理を記述することができます。

A = 1
B = 2

if A + B == 2:
    print('1: if')
elif A + B == 3:
    print('1: elif')
else:
    print('1: else')

if A + B == 1:
    print('2: if')
elif A + B == 2:
    print('2: elif')
else:
    print('2: else')

if A + B == 3:
    print('3: if')
elif A + B == 2:
    print('3: elif')
else:
    print('3: else')
# 出力結果
1: elif
2: else
3: if

これらを用いて、もっともよく使われるのは ifとelseをもちいる方法でしょう。
例えば、 if A:のAがTrueになるかわからない時、elseをもちいることで、別の処理を記述することができます。

A = 3
if A == 1:
    print('ifが通ったよ')
else:
    print('elseだよ')     
# 出力結果
elseだよ

適切なifの書き方

上記でも見てきたように、ifの後には、計算式やその他の処理を持ってくることができます。(if A + B == C:)

しかし、Pythonでは、if A:という記述をできる限り徹底することが推奨されています。

A + B == C のような単純な計算式の場合、それはケースバイケースですが、文字列の場合はどうでしょうか。

例えば、

A = 'YES'
if A == 'YES':
    ...

という書き方は、

A = 'YES'
if A:
    ...

という書き方でも処理を走らせることができます。

終わりに

今回は、Pythonのifについて解説をしました。

Pythonにおいて、

  • 文字列(str)、数値(int)などの型
  • 計算式(演算)
  • if
  • for

これらをまず使いこなせるようになれば、簡単なプログラム処理を書くことができるようになります。

今回は、その中のifを中心にみてみました。

ifを終えたら次は for についても学習しましょう!

Python forでリスト(配列)を作る