Python

【Python】while文を使ったループ処理

この記事では、Python の while文 の使い方について解説します。

while文 は、条件式が True の間、ブロック内の処理を繰り返し実行します。なので、イテラブルを使ってループ処理する for文 とは異なった使い方ができます。

それでは、while文 の使い方を見ていきましょう!

while文の使い方

while文 は、以下のように使用します。

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

指定した条件式が True の間、ブロック内の処理が繰り返されます。先に条件式が評価されるため 1度もブロック内が処理されないこともあります。

サンプル

以下のコードは、i3未満の間、繰り返し処理されます。

i = 0

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

実行結果

0
1
2

処理をスキップする

while文 のブロック内に continue を記述することで処理をスキップできます。以下のコードは、i3 の時に処理をスキップしています。

i = 0

while i < 5:
    i += 1

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

実行結果

1
2
continue
4
5

処理を中断する

while文 のブロック内に break を記述することで処理を中断させることができます。以下のコードでは、i3 になったら繰り返し処理が中断されます。

i = 0

while i < 5:
    i += 1

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

実行結果

1
2
break

無限ループ

条件式に常に True な値を指定すると無限ループさせることができます。

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

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

i = 0

while True:
    print(i)
    i += 1

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

i = 0

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

i3になった時に break が処理され、while文を抜け出します。

do...while文

ほかの言語でよく使われている do...while文 は Python には存在しません。do...while文は、条件に関わらず必ず 1度は実行される while文 となっています。

Python では無限ループと break を組み合わせることで同じようなコードを実装できます。

while True:
    # なにかしらの処理
    if 条件式:
        break

例えば、以下のような感じで使います。

num = 1

while True:

    print(num)
    num += 1
    if num < 10:
        break

実行結果

1

まとめ

この記事では、Python の while文 の使い方を解説しました!

for文 はイテラブルオブジェクト、while文 は条件によってループ処理します。状況にあった方に使いましょう。

for文を使ってループ処理をする方法

それでは今回の内容はここまでです。ではまたどこかで〜( ・∀・)ノ