【Python】while文のbreak・else・continue使い方まとめ(ループを抜ける・最後に実行・次のループ)

Pythonのループ処理で使われるwhile文をもっと自由に使うためにbreak・else・continueというキーワードが用意されています。今回はこれらの使い方を解説していきます。

関連記事

今回はfor文やif文で使われるpass・break・continueの使い方を解説していきます。 これらのキーワードはループの中断や継続など特別な挙動を与えるためのものです。知っているとコンパクトにコードを書くことができるので3つ[…]

breakでループを抜ける

  • break:ループの強制終了
  • 条件式が真であってもwhile文を抜け出して次の処理に移る

上の例では一回目のループで「break」が実行されるのでそれ以降のループは実行されずに、次のprint関数の処理に移ります。

ただ、この例のようにwhile文でいきなりbreakを使うと一回目のループで終了してしまいます

if文とセットで使うことでループを終了させるタイミングを設定できますね。

これはnum変数が6のとき「break」が実行されています。

以下のように「while True」と「break」を組み合わせて使うこともできます。

標準入力で「15」が入力されたときに「break」が実行されています。

while True」を使うときはコードを間違えると無限ループになるので要注意です。

標準入力のinput関数に関しては以下の記事にまとめています。

関連記事

こんにちは、今回はPythonの標準入力についてみていきたいと思います。 paizaで問題を解いてレベルアップをするには避けては通れない標準入力ですが、私は何も知らずに突っ込んでさっぱりわからず撃沈した記憶があります。(笑) […]

continueで次のループへ

  • continue:次のループ処理に移る
  • while文から脱するわけではない

「continu」が実行されるとその下のprint関数は無視して次のループに入ります。このようにループ自体が終了するわけでないことがポイントです。

elseで最後だけ実行

  • else:while文の条件文が偽になった後に実行される
  • 一回だけ実行される

条件「num<3」が偽になった後で「else」が実行され、最後にnum変数の値を出力しています。このように最後に一回だけ実行されます

ただし、while文中に「break」があるときは「else」は実行されません。先にbreakが実行されてループが終了するからです。

まとめ

  • break:ループの強制終了
  • continue:次のループを実行
  • else:条件が偽のときに実行
    • 先にbreakがあれば実行されない

関連記事

プログラミング言語のなかでも人気の高いPythonを学習する教材を紹介します。 最近ではプログラミングスククールがたくさんあるので迷うと思います。 ですが、まずは無料教材から始めてみましょう。苦労した分だけ力がつきます。 […]