6章whileとforによるループ
何から何までなんやかや
我らの知られぬ苦しみ、なんやかや……
──ロバート・バーンズ,
何から何までなんやかや(For a' That and a' That)
if
、elif
、else
による条件分岐は、上から下に進む。しかし、同じことを2回以上行わなければならないことがときどきある。そのようなときに必要なのはループだ。Pythonにはwhile
とfor
の2種類のループがある。
6.1 whileによる反復処理
Pythonでもっとも単純なループのメカニズムはwhile
である。対話型インタプリタを使って次の例を試してみよう。これは1から5までの数値を表示する単純なループだ。
>>> count = 1 >>> while count <= 5: ... print(count) ... count += 1 ... 1 2 3 4 5
まず、count
に1
を代入する。そして、while
ループは、count
と5
を比較して、count
が5
以下ならループを続ける。ループ内では、count
の値を表示してから、count += 1
文でcount
を1ずつインクリメントする。Pythonは、ループの先頭に戻って再びcount
と5
を比較する。count
の値は2
になっているが、5
以下なので、再びwhile
ループが実行され、count
はインクリメントされて3
になる。
count
がループの最後の行で5
から6
にインクリメントされるまで、これが続く。count
が6
になってから最初の行に戻ると、count <= 5
が今度はFalse
になり、while
ループは終了する。Pythonは、その次の行に移動する。
6.1.1 breakによるループの中断 ...
Get 入門 Python 3 第2版 now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.