while文は条件式がTrueを満たしているあいだループをくり返す制御構造を持っています。この例は変数iを使って条件を作っていますが、このようなカウンターとなるパターンで処理するのはfor文を使うのを推奨します。
while文による単純な繰り返しです。
# File: whilesample.py
# while文による単純な繰り返し
# 単純ループ
i=0
while i < 10:
i += 1
print(i)continue文が現れるとループの残りのステートメントをスキップして次のループに入ります。この時、注意したいのは、スキップする場所にカウンターのステップアップ処理(あるいはステップダウン処理)が入っている場合です。カウンターとなる変数は何も変わらなくなってしまうので無限ループが発生してしまいます。
# continue文
i=0
while i < 10:
i += 1
if i < 3:
continue
print(i)break文が現れるとループから抜けます。その際、break以降にある処理はスキップされます。
# break文
i=0
while i < 10:
i += 1
if i > 7:
break
print(i)while-else文は、whileの条件式が満たされなくなりループが終了した時にelseのブロックが処理されます。ループの後処理を記述する時に便利な機能です。
# else文
i=0
while i < 10:
i += 1
print(i)
else:
print("finish loop")