はじめに
前回のPython入門(6)では、Pythonの論理演算子とプール型について学びました。
Python入門の第七弾として、Pythonの while 文による繰り返し処理について紹介します。
この記事を読むと次の疑問について知ることができます。
それでは、Pythonの while 文による繰り返し処理をこれから始めようとする初心者向けに分かりやすく解説していきます。
繰り返し処理
Pythonのプログラムでは、他のプログラム言語と同様に次の3つの処理の組み合わせで実行されます。
今回は、「3.繰り返し処理(反復処理)」について紹介していきます。
Pythonでは、この繰り返し処理をする文に、while 文と for 文があります。
ここでは、while 文について紹介していきます。
while 文による繰り返し処理
while 文による繰り返し処理は、条件式の条件を満たしている間は while 文以下の処理を繰り返します。
while 条件式 :
処理1
処理2
:
ここで簡単な while 文の例を紹介しましょう。
以下のGoogle ColabでのPythonプログラムは、初期値としてsuti = 0 とし、while文の条件式で suti <= 10 とすることにより、suti が10を超えるまでsuti の2乗を計算し、その結果をプリントするというプログラムを書いてみました。
無限ループになった場合の対処法
while 文で繰り返し処理のプログラムを書いていると、場合により無限ループになるコードを書いてしまうことがあります。
そのような場合に、Google Colabではプログラムを実行「黒丸に白▷」のマークをクリックすることにより無限ループから抜け出す(終了する)ことができます。
例えば、次に様なプログラムは無限ループとなります。
上述のプログラムは実行している状態であり。左のマークの外側がぐるぐる回りますので、その「ぐるぐる回るマーク」をクリックすると、以下のように無限ループを抜け出すことができます。
break 文によるループの抜け出し
プログラム上でループを抜け出したい場合は、「break 文」を利用します。
例えば、次のプログラムは上述の無限ループを抜け出すためにbreak文を利用しています。
上述のプログラムでは、suti が 50 になったら、while文を抜け出し、その時の suti を出力するプログラムとなっています。
continue 文
continue文は、while文のの中で利用されると、continue文の以下の処理を中止して、while文の先頭に戻りやり直すことができます。
つまり、ある条件の時は以下の処理をやらずに飛ばして再度実行することができます。
以下の Python プログラムは、while 文で11回し、その都度 suti を出力するプログラムですが、途中で if 文により suti が 2 と 5 の場合を飛ばしていますので、出力結果は、2 と 5 が除かれた出力となっています。
while else の利用
while と一緒に else を利用すると、while そ処理が終了した後で else 以降の処理を実行することができます。
以下は、初期値として suti = 0 とし、while 文で繰り返し処理を実行し、毎回 suti を1 を足しその数値を出力し、suti が 10 になったら終了し、その後 else 以降の処理を実行するプログラムです。
それほど利用する機会はないと思いますが、 break文と一緒に利用することが一般的です。
break 文と一緒に利用することにより、while文の繰り返し処理が全て実行された場合には「特定の処理(else節の処理)が実行され、while文の処理がbreakにより抜けた場合は、特定の処理(else節の処理)は実行しない」と言うように使います。
上述のプログラムは、break 文により途中で suti が 5 になったらwhile文を抜け出す処理であり、その際にはelse節以降の処理が行われません。
おわりに
如何だったでしょうか?
while 文による繰り返し処理、break文、continue文、else節などについて解説してきました。
この記事を読みながらPythonを学んでもらえればと思います。
次をお楽しみに?
以上です。
コメント