Pythonでは、プログラムの流れを制御するために「制御構文」が用意されています。これにより、条件によって処理を分けたり、同じ処理を繰り返したりすることができます。本記事では、if文・forループ・whileループといった基本的な制御構文について解説します。
Pythonの導入についてはこちら。
Python入門:最初のプログラムを作って実行する方法 – Lean Data Office
Python環境構築のやり方|初心者向け完全ガイド – Lean Data Office
if文
最初はif文です。
これはとてもシンプルです。例えば a = True として、

と書くと、「a」がTrueのときだけ表示されます。もし a = False にすると、何も表示されません。

ここで重要なのはインデント(字下げ)です。コロン(:)の後にインデントされた行は、if文に属する処理になります。つまり、インデントされたコードは、aがTrueのときだけ実行されます。
下のコードでは、
a = False
if a:
print('It is true')
print('Also print this')
print('Always print this')
aがFalseであれば、ifのブロック外に配置したprintだけが表示されていることがわかります。

a = True
とすると、すべて表示されることも確認できます。

また、else を使うことで分岐もできます。
a = True
if a:
print('It is true')
print('Also print this')
else:
print('It is false')
print('Always print this')
この場合、aがTrueなら上、Falseなら下が実行されます。Pythonではこのインデントがプログラムの構造を決める非常に重要な要素です。


さらに、条件は入れ子にすることもできます。
a = True
b = True
if a:
print('It is true')
print('Also print this')
if b:
print('Both are true')
else:
print('It is false')
print('Always print this')

さらに増やすと:
a = True
b = True
c = True
if a:
print('It is true')
print('Also print this')
if b:
print('Both are true')
if c:
print('All three are true')
else:
print('It is false')
print('Always print this')

このように深くネストできますが、あまり複雑になると読みづらくなります。
forループ
その問題を避けるために使われるのがループ(繰り返し処理)です。
まずはforループです。forループは「イテラブル」と呼ばれるデータ(例:リスト)を順番に処理します。

ここでの「in」は、「順番に取り出す」というfor文の構文の一部です。
また、item という名前は自由に決められる変数です。
whileループ
次にwhileループです。

これは「条件がTrueの間、繰り返す」処理です。
ここで重要なのは:
a = a + 1
この行がないと、aの値が変わらず、条件がずっとTrueになってしまい、無限ループになります(0を永遠に出力し続ける)。
whileループは、条件が変化していく場合に使うのが適しています。
if文は条件によって処理を分けるための基本的な構文です。forループはリストなどの要素を順番に処理する際に便利であり、whileループは条件が満たされている間処理を繰り返します。これらの制御構文を組み合わせることで、複雑な処理も効率よく記述できます。基礎をしっかり理解して使いこなすことが、プログラミング力向上の鍵となります。