for、while
前回、リスト内の複数の要素を比較する方法を紹介しました。

今回はfor文、while文のbreak、continue、pass、elseのそれぞれの使い方を紹介します。
それでは始めていきましょう。
for文、while文の使い方
まずはfor文、while文の使い方をおさらいしてみましょう。
for文の使い方としては「for 変数 in リスト:」とすると、リストの要素が一つずつ変数に格納され、それ以降の処理が行われます。
for i in range(0, 5):
print(i)
実行結果
0
1
2
3
4
while文の使い方としては「while 条件:」で条件がTrueの間はずっとwhile文のブロックの処理が行われます。
そのため条件を適切に設定しないと永遠と繰り返し処理されてしまうので注意です。
i = 0
while i < 5:
print(i)
i = i + 1
実行結果
0
1
2
3
4
break
breakはfor文やwhile文の繰り返し処理から抜けるために用いられ、通常if文とともに用いられます。
for i in range(0, 5):
if i == 2:
break
print(i)
実行結果
0
1
i = 0
while i < 5:
if i == 2:
i = i + 1
break
print(i)
i = i + 1
実行結果
0
1
この場合、「i == 2」となった時点でfor文やwhile文の繰り返し処理から抜けるため、「print(i)」によって表示される結果は0と1のみです。
continue
continueはその後の処理を飛ばし、for文やwhile文の繰り返しの最初に戻るために用いられます。
for i in range(0, 5):
if i == 2:
continue
print(i)
実行結果
0
1
3
4
i = 0
while i < 5:
if i == 2:
i = i + 1
continue
print(i)
i = i + 1
実行結果
この場合、「i == 2」となった場合、「continue」で繰り返しの最初に戻るため、print(i)が実行されません。
そのため「2」だけが表示されない結果となります。
pass
passは条件分岐で処理がない場合に用いられ、そのまま次の処理が行われます。
for i in range(0, 5):
if i == 2:
pass
print(i)
実行結果
0
1
2
3
4
i = 0
while i < 5:
if i == 2:
pass
print(i)
i = i + 1
実行結果
0
1
2
3
4
passの場合はその後の処理が行われるため、こちらの例では0から4まで全ての数字が表示されます。
else
elseはfor文やwhile文の繰り返し処理が行われた後、最後に処理される場所になります。
for i in range(0, 5):
print(i)
else:
print("END")
実行結果
0
1
2
3
4
END
i = 0
while i < 5:
print(i)
i = i + 1
else:
print("END")
実行結果
0
1
2
3
4
END
こちらの例では0から4までの出力は繰り返し処理により表示されており、最後の「END」はその後の「else」の処理により表示されています。
ただしfor文やwhile文内で、if文の条件分岐の後、「break」で繰り返し処理を抜けた場合は実行されないので注意です。
for i in range(0, 5):
if i == 2:
break
print(i)
else:
print("END")
実行結果
0
1
i = 0
while i < 5:
if i == 2:
break
print(i)
i = i + 1
else:
print("END")
実行結果
0
1
次回は複数のfor文からbreakで全てのfor文から抜ける方法を紹介します。
ではでは今回はこんな感じで。
コメント