無限ループと終了条件 | while文 | Python本格超入門

スポンサーリンク

スポンサーリンク

無限ループと終了条件

while文は、条件が真である限り繰り返し処理を実行します。条件がずっと真である場合、ループは終了せずに無限に繰り返され、これを無限ループと言います。無限ループが発生すると、プログラムが停止しなくなるため、適切な終了条件を設定することが重要です。

無限ループの例

無限ループは、while文において終了条件が適切に設定されていない場合に発生します。以下は、条件が常に真であるために無限ループを引き起こすコードの例です。


# 無限ループの例
while True:
    print("無限ループ中")
    

このコードではwhile Trueとすることで、常に真の条件が設定されており、プログラムは永久に"無限ループ中"を出力し続けます。このような場合、プログラムを手動で停止する必要があります。

無限ループの終了方法

無限ループを防ぐためには、終了条件を適切に設定する必要があります。break文を使って特定の条件が満たされたときにループを強制的に終了させることができます。


# 無限ループの終了例
counter = 0
while True:
    print("ループ中")
    counter += 1
    if counter == 5:
        break
    

この例では、counterが5に達した時点でbreak文が実行され、ループが終了します。このように、適切な終了条件を設定することで、無限ループを防ぐことができます。

while文での終了条件の設定

while文の終了条件を適切に設定するには、ループが終了するための明確な条件を指定することが重要です。次の例では、変数numが10未満の場合にループを続け、10に達したら終了します。


# 終了条件を持つwhileループ
num = 0
while num < 10:
    print(num)
    num += 1
    

このコードでは、numが10に達した時点で条件num < 10が偽となり、ループが終了します。このように、終了条件をしっかりと設けることで、無限ループを防ぎつつ繰り返し処理を実行できます。

無限ループの発生を防ぐ方法

無限ループを防ぐためには、以下のポイントに注意する必要があります。

  • while文の終了条件を明確に設定する。
  • 条件がループ内で変更されるようにする(例: カウンタ変数のインクリメント)。
  • 必要に応じてbreak文を使い、強制的にループを終了させる。

まとめ

while文は非常に便利な繰り返し処理の方法ですが、終了条件が正しく設定されていないと無限ループが発生し、プログラムが停止しなくなる可能性があります。break文を使ったり、条件を適切に設定することで、無限ループを防ぎ、効率的なループ処理を実現できます。while文を使う際は、必ず終了条件を考慮してコードを設計しましょう。