Python

【Python】while文を使ってループ処理をする方法

この記事では、Pythonのwhile文について解説します。while文を使うことで繰り返し処理を行うことができます。

while文の使い方

while文は条件を指定し、条件がTrueの間はブロック内の処理が繰り返されます。

while 条件式:
    # 繰り返す処理

while文は以下のような流れて繰り返し処理されます。

  1. 条件式が評価される
  2. 【True】ブロック内の処理が行われ、①に戻る【False】処理を抜ける
基本的にwhile文よりもfor文の方が処理が早いので、出来るだけfor文を使いましょう。

サンプル

以下のコードは「i」が3未満の間は繰り返されます。

i = 0

while i < 3:
    print(i)
    i += 1

実行結果

0
1
2

処理をスキップする [continue]

while文は、continueを使うことで処理をスキップできます。

以下のコードは、iが3の時に処理をスキップしています。

i = 0

while i < 5:
    i += 1

    if i == 3:
        print('continue')
        continue
    print(i)

実行結果

1
2
continue
4
5

処理を中断する [break]

while文は、breakを使うことで処理を中断させることができます。

以下のコードでは、iが3になったら繰り返し処理が中断されます。

i = 0

while i < 5:
    i += 1

    if i == 3:
        print('break')
        break
    print(i)

実行結果

1
2
break

無限ループ

条件式にTrueな値を指定すると無限にループします。

実行すると無限にループしてしまうので、ターミナルやコマンドプロンプトから実行した場合はCtrl + Cで実行を中止しましょう!

以下のコードは、iを1ずつ増やして、それを出力し続けるだけのプログラムです。実行すると物凄いスピードで値が増えていきます。

i = 0

while True:
    print(i)
    i += 1

途中で処理を終わらせたい場合にはbreakを使います。

i = 0

while True:
    if i == 3:
        break
    print(i)
    i += 1

こうすることで、iが3になった時にbreakが処理されてwhile文を抜け出します。

【おすすめ】Python参考書