python入門講座 | ループ処理3(breakまたはcontinueでループを中断)[第40回]

アラサーOLのためのpython入門講座
breakまたはcontinueを使うことで、条件を満たすときにループ処理を中断できます。

Ciao!みなさんこんにちは!このブログでは主に
(1)pythonデータ解析,
(2)DTM音楽作成,
(3)お料理,
(4)博士転職
の4つのトピックについて発信しています。

今回は「アラサーOLのためのpython入門講座」です!この講座では、プログラミング初心者アラサーOLのMi坊さんに、pythonを学習する上でのアドバイスを行います!「パソコンもプログラミングも初心者だけど、プログラミングができるようになりたい!」という方のためにstep-by-stepで解説していきます。

for文の中でbreakとcontinueを使うと、ループ処理を途中で中断することができます。breakは残りのループをすべてスキップします。一方のcontinueは今のループをスキップして次のループに移ります。どちらも実戦で頻出のテクニックなのでマスターしましょう!

この記事を読めば、pythonでループ処理の実戦的な書き方を知ることができます。ぜひ最後までお付き合いください!

Kaiko
Kaiko

この記事はこんな人におすすめ

  • 初心者だけどpythonを始めた!
  • pythonの基本的な使い方を知りたい!
  • 独学で学んだpythonの知識を整理したい!

Abstract | breakまたはcontinueで条件に合わせてループを中断

break文やcontinue文を使うことで、for文の途中でループを中断することができます。ある条件を満たすときにbreakやconitnueを使って残りの処理をスキップするときに使います。このような処理は実際のプログラミングの場面でよく使うので、ぜひ覚えてマスターしましょう!

break文を使うと直ちにループから抜け出し、残りのループはスキップされます。一方、continueを使うとそのループの残りの処理がスキップされ、次のループに入ります(図1)。行いたい処理によってbreakとcontinueを使い分けましょう。

図1. break文とcontinue文の違い



Background | ループ処理とfor文

ループ処理とは、同じ処理を一定回数繰り返すことです。Listなど配列タイプの変数のすべての要素や一部の要素に同じ処理を行いたいとき、一回一回の処理をいちいち書き下すことなく、いっぺんに処理することができます。ループ処理はPythonに限らずプログラミングで不可欠な処理です。

Pythonではfor文やwhile文を使ってループ処理を実装することができます。for文では予め繰り返し処理を行う回数が決まっています。一方、while文では繰り返しの範囲が決まっておらず、ある条件を満たしたら処理を終える、逆に言うと条件を満たすまでは延々と処理が繰り返されます。

今回はfor文にbreakとcontinueを組み合わせてループを中断するテクニックをご紹介します!for文については以下の過去記事もありますので、参考にご覧ください。

  1. for文の基礎: python入門講座 | ループ処理1(for文の基本的な使い方)
  2. for文の実戦的な使い方: python入門講座 | ループ処理2(for文とrange()で実戦的なループ処理)[第39回]



Method | breakやcontinueでループ処理を中断する方法

for文にbreak文やcontinueを組み込んで、条件を満たすときにループを中断する方法を解説します。実際に手を動かしながら学んでいきましょう!Jupyter Notebookを立ち上げてコーディングしながら読み進めてください。練習問題の後にコーディング例も掲載しますので、やってみてどうしてもわからなければそれを見て進めてください。



準備 | python notebookの新規作成

まずはpython notebookを用意しましょう。いつものpython_practiceのディレクトリに「practice_for_breac_continue」という名前のpython notebookを作成してください。ターミナルを立ち上げて~/python_practiceに移動、jupyter notebookを起動し、ブラウザから新規→Python3でpython notebookを開いて、ファイル→リネームでファイル名を決定します。
もしやり方がわからなければ、過去記事「python入門講座|pythonを使ってみよう2(Jupyter Notebookを使う方法)」で詳しく解説しているので、これを見ながらやってみてください。

python notebookを起動したら、適宜Markdownセルに説明書きを加えながら下記の説明に沿ってコードを書いて実行していきましょう。Markdownセルやコードセルなどの用語やこれらの使い方についても、過去記事「python入門講座|pythonを使ってみよう2(Jupyter Notebookを使う方法)」を参照してください。練習問題の後にpython notebookの例を掲載します。もし書き方がわからなければそちらを見てください。



break文の使い方: 残りのループを全てスキップする

break文を使うとループを途中で中断し、ループから抜けます。以降のループはすべてスキップされます。以下の例を実行してみましょう。

# loop 10 times
for i in range(10):
    # break when i == 6
    if(i == 6):
        print('break')
        break
    
    # print current loop
    print(i)

# loop end
print('loop end')

この例では、変数iが0から9まで1ずつ変化するループを組んでいます。ただし、変数iが6となるときにbreak文でループを終了します。iが0から5までのときにはbreakが発動しないので、print文で変数iの値が出力されます。実行結果は以下です。

0
1
2
3
4
5
break
loop end

6以降が出力されていません。変数iが6のときにループから抜けたことがわかります。



continue: 以降の処理をして次のループへジャンプ

continueを使うとループを1回スキップします。そのループの残りの処理がスキップされ、次のループにジャンプします。以下の例を実行してみましょう。

# loop 10 times
for i in range(10):
    # continue when i == 6
    if(i == 6):
        print('continue')
        continue
    
    # print current loop
    print(i)

# loop end
print('loop end')

先程のbreakの例で、breakを入れていた箇所にcontinueを入れています。変数iが6のときには以降の処理がスキップされるので、変数iの値が出力されません。以降のループはそのまま継続されるので、7以降は出力されます。実行結果は以下です。

0
1
2
3
4
5
continue
7
8
9
loop end



Result | 練習問題

練習問題をやってみましょう。以下の処理を行うコードを書いてみましょう。

  1. for文とrange()で変数iが0から9まで1ずつ変化するループを作り、変数iを出力してください。
    ただし、変数iが5のときには出力する前に、breakでループを中断してください。
  2. for文とrange()で変数iが0から9まで1ずつ変化するループを作り、変数iを出力してください。
    ただし、変数iが偶数のときには出力する前に、continuueで次のループに移ってください。



練習問題の例

練習問題の回答が完成したら回答例を確認しましょう!下の画面をスクロールすると回答例が見られます!参考にしてみてください。また、今回の記事で出てきた他のコードも載っているので参考にしてください!

練習問題おつかれさまでした!
今日はここまでです。Python Notebookを終了しておきましょう。もしPython Notebookを終了方法がわからなければ過去記事「python入門講座|pythonを使ってみよう2(Jupyter Notebookを使う方法)」の「Python Notebookの起動・終了方法」の章を参照してください!



Conclusion | まとめ

最後までご覧いただきありがとうございます!
for文にbreakやcontinueを組み込んでループを中断する方法を解説しました。ループの中で、条件に合うときに残りのループをスキップしたり、次のループにジャンプするといった処理は実際のプログラミングの場面でよく使うテクニックです。ぜひ覚えてマスターしましょう!

以上「python入門講座 | ループ処理3(breakまたはcontinueでループを中断)」でした!
またお会いしましょう!Ciao!



References | 参考

以下の教科書を参考にして進めています!より詳しく学びたい方は購入して読んでみてください!

Pythonの参考教科書

コメント

タイトルとURLをコピーしました