【Python】第2章第6回:breakとcontinueの活用法
Pythonでは、break
とcontinue
を使うことで、ループの制御を柔軟に行うことができます。本記事では、それぞれの基本的な使い方と応用例を解説します。
0. 記事の概要
この記事を読むメリット
- breakとcontinueの基本を理解:ループを途中で終了したり、特定の条件でスキップする方法が学べます。
- エラーを防止:無駄なループや処理を避ける効率的なコードの書き方がわかります。
- 実用的なスキルを取得:複雑な条件を伴うループの制御が可能になります。
この記事で学べること
- break文の基本と応用
- continue文の基本と応用
- ループの効率的な制御方法
1. break文の使い方
1.1 break文の基本
break
文は、ループを途中で終了するために使用されます。
# break文の基本例
for i in range(10):
if i == 5:
break
print(i)
動作解説
- ループ内で
i
が5
になった時点でbreak
文が実行されます。 - ループは即座に終了し、以降の繰り返しは行われません。
1.2 条件による早期終了
break
文を使用して特定の条件でループを終了させることで、無駄な処理を回避できます。
# 条件に基づく早期終了
numbers = [1, 2, 3, 4, 5, 6]
for num in numbers:
if num > 4:
print("条件を満たしました。ループを終了します。")
break
print(num)
動作解説
- リスト内の要素を順にチェックし、
num > 4
でループを終了します。 - 条件が満たされない間は、要素が出力されます。
2. continue文の使い方
2.1 continue文の基本
continue
文は、現在の繰り返しをスキップして次の繰り返しに移行します。
# continue文の基本例
for i in range(5):
if i == 2:
continue
print(i)
動作解説
i == 2
がTrue
の場合、continue
文が実行されます。- 現在の繰り返しがスキップされ、次の繰り返しに進みます。
2.2 特定の条件をスキップ
特定の条件に一致する場合だけ処理をスキップすることで、効率的なループを構築できます。
# 条件に応じてスキップ
numbers = [1, 2, 3, 4, 5]
for num in numbers:
if num % 2 == 0:
continue
print(num)
動作解説
- 偶数の場合、
continue
文が実行されます。 - 奇数の場合のみ、
print
文が実行されます。
3. 実践例:breakとcontinueを活用したプログラム
1から100までの数値をチェックし、特定の条件に基づいて出力を制御します。
# 実践例: 条件付きの出力制御
for i in range(1, 101):
if i > 50:
break
if i % 5 == 0:
continue
print(i)
動作解説
- 数値が
50
を超えるとbreak
文でループを終了します。 - 数値が
5
で割り切れる場合、continue
文でスキップされます。 - それ以外の数値が出力されます。
4. 練習問題
以下の課題に挑戦してみましょう。
- 1から20までの数値をループで処理し、3の倍数の場合はスキップ、10以上でループを終了するプログラムを作成してください。
- 文字列リストをループで処理し、「pass」を含む文字列が見つかった場合はループを終了、それ以外は出力するプログラムを作成してください。
5. 練習問題の解答と解説
問1の解答例
# 3の倍数をスキップし、10以上で終了
for i in range(1, 21):
if i >= 10:
break
if i % 3 == 0:
continue
print(i)
問2の解答例
# passを含む文字列でループを終了
words = ["hello", "world", "pass", "python"]
for word in words:
if "pass" in word:
break
print(word)
6. まとめ
Pythonのbreak
とcontinue
を使うことで、ループの制御を効率化できます。これを基に、さらに実践的なプログラム作成に挑戦してください。