60秒以内にPythonのループ処理入門〈講座7〉
今回は Python使ったループ処理、いわゆる繰り返し処理について見ていきましょう。
繰り返し処理は決まった回数や条件を満たしている間は同じ処理を繰り返し行う場合に使います。Python では繰り返し処理を行うために while 文と for 文が利用できます。ここでは Python で繰り返し処理を行う方法について解説します。
while 文
単純に 0 から 9 の数字を表示するプログラムを書いてみます。
まずは 変数count_number を宣言してあげて 0 で初期化してあげます。
# while
count_number = 0
その後に while を書いていくのですが、count_numberが 10 より小さい間、次の処理を繰り返しなさい、と書いてあげます。
ここでも字下げが重要で、こちらの条件が真の間、返す処理を字下げして何行でも書くことができます。
では今回は print(count_number) としてあげて count_number を 1 ずつ増やしていきたいので count_number+= 1 としてあげます。
# while
count_number = 0
while count_number < 10:
print(count_number)
count_number += 1
これで何が起きるかなのですが、まず count_numberが 0 でこちらの条件は満たすので 0 が表示されて count_number が今 1 になります。
1 になった時に、次にまたこちらへ来て条件を満たすので 1 を表示してあげて、今度は count_numberが 2 になって繰り返していって、count_numberが 10 になった時にこちらの条件を満たさなくなるので、結果的に 0 から 9 までが表示されます。
それから、こちらの条件を満たさなくなった時の処理を明示的に書くこともできて、その場合は else: に繋げて書いてあげてください。
では今回は print("end") としてあげます。
# while
count_number = 0
while count_number < 10:
print(count_number)
count_number += 1
else:
print("end")
では実行してみたいと思います。
それからループを抜けるための break 命令についても見ておきましょう。
こちらで count_number が 5 の時にループを抜けたかったとします。
その場合はここで break と書いてあげてください。
なお、このように途中でループを抜ける場合には else: の処理が実行されないことにも注意してください。
次は for によるループ処理について
for の構文なのですが、「for 変数 in データの集合:」で、字下げをしてあげて「処理」という構文になっています。
そうすると、こちらのデータの集合から 1 個ずつ値を取り出して変数に入れつつ、全てなくなるまでこちらの処理を繰り返す、という仕組みになっています。
では for を使って、前回と同じように 0 から 9 の数値を表示するプログラムを書いてみましょう。
for count_number in としてあげて、データの集合は range という命令で作ることができます。
range(0, 10) とすると、0 から 10 を含まない数、つまり 0 から 9 までの集合を作ってくれます。
もしくは単に 0 から始まる場合は range(10) と書くと同じことになるので覚えておきましょう。
# for
# for 変数 in データの集合:
# 処理
# for count_number in range(0, 10):
for count_number in range(10):
if count_number == 5:
break
print(count_number)
else:
print("end")
それから while でも使えるのですが、continue という命令も見ておきましょう。
for count_number in range(10):
if count_number == 5:
continue
print(count_number)
else:
print("end")
これはループを 1 回スキップするための命令です。
こうすると、count_numberが 5 の時に以下の処理をスキップして次のループに移ってくれます。
では実行してみると、5 のところだけないのがわかるかと思います。
以上
よろしくお願いいたします。
この記事が気に入ったらサポートをしてみませんか?