Pythonのループと制御ステートメント(continue・break・pass)を徹底解説
はじめに
本記事では、Python 3.x(およびそれ以前のバージョン)で使えるループ処理と、continue・break・pass の3つの制御ステートメントについて解説します。
Pythonには「for」と「while」という2つのループ構文が用意されています。他の多くの言語と異なり、Pythonのfor文は実行前の条件判定に縛られず、range()関数などを活用して柔軟に反復処理を記述できるのが特徴です。
それでは、それぞれの実装例を見ていきましょう。
条件付きループ:while文
while文は、条件式がTrueである間、同じ処理を繰り返し実行します。
サンプルコード
i = 0
while (i < 4):
print("Tutorialspoint")
i = i + 1
実行結果
Tutorialspoint
Tutorialspoint
Tutorialspoint
Tutorialspoint
無条件ループ:for文
for文は、文字列やリストなどの反復可能オブジェクトから要素を1つずつ取り出して処理します。
サンプルコード(文字列の反復)
for i in "Tutorialspoint":
print(i, end=" ")
実行結果
T u t o r i a l s p o i n t
サンプルコード(range関数を使った反復)
for i in range(1, 5):
print(i)
実行結果
1
2
3
4
range(1, 5)は「1以上5未満」の整数を順番に生成するため、1〜4が出力されます。
ジャンプステートメント
続いて、ループの流れを制御するジャンプステートメントの実装例を紹介します。
continue文:以降の処理をスキップする
continue文が実行されると、その周回の残りの処理を飛ばして、次の繰り返しに進みます。以下の例では母音(a・e・i・o・u)を検知するとスキップし、それ以外の文字のみを出力します。
for i in 'Tutorialspoint':
if i == 'a' or i == 'e' or i == 'i' or i == 'o' or i == 'u':
continue
else:
print('Character :', i)
実行結果
Character : T
Character : t
Character : r
Character : l
Character : s
Character : p
Character : n
Character : t
なお、この条件判定は if i in 'aeiou': のように書くと、より簡潔で読みやすくなります。
break文:ループを強制終了する
break文が実行された時点で、ループ全体が即座に終了します。以下の例では、母音(a・e・i・o ※uは条件に含まれない点に注意)が出現した時点でループを抜けます。
for i in 'Tutorialspoint':
if i == 'a' or i == 'e' or i == 'i' or i == 'o':
break
else:
print('Character :', i)
実行結果
Character : T
Character : u
Character : t
pass文:何もしない(プレースホルダー)
pass文は「何も実行しない」ことを明示するためのステートメントです。構文上は何らかの処理を書く必要があるものの、実際には何もしたくない場合のプレースホルダーとして活用されます。
for i in 'Tutorialspoint':
if i == 'u' or i == 'p':
pass
else:
print('char :', i)
実行結果
char : T
char : t
char : o
char : r
char : i
char : a
char : l
char : s
char : o
char : i
char : n
char : t
まとめ
本記事では、Python 3.x(およびそれ以前のバージョン)で利用できるループ構文(for文・while文)と、continue・break・passの各ステートメントについて学びました。これらを適切に使い分けることで、柔軟で読みやすい反復処理を記述できるようになります。ぜひ実際にコードを動かして、挙動の違いを確認してみてください。
-
シェルスクリプト(bash)でbreakとcontinueステートメントを使う方法
この記事では、bashスクリプトにおけるbreakとcontinueの使い方を詳しく解説します。bashには主に3種類のループ構文(for、while、until)が用意されており、breakとcontinueはbashの組み込みコマンドとして、ループの流れを制御するために使われます。この概念はPythonをはじめとする人気プログラミング言語にも存在するため、覚えておくと非常に役立ちます。 $ type -a break continue breakステートメントでループを抜ける breakステートメントを実行すると、その時点でループから抜け出し、制御はループの次のステートメントへ移ります
-
Pythonの条件分岐をマスターする:if、else、elifの使い方徹底解説
このチュートリアルでは、Pythonにおける if、else、elif 文の使い方を詳しく解説します。 プログラミングでは、条件の結果に応じて処理を分岐させたい場面が頻繁にあります。Pythonでは、if 文を使って条件を評価し、その結果によって実行するコードを制御します。 Pythonのif文とは Pythonにおける if 文の基本構文は以下のとおりです。if condition: statement ここで特に注意すべきポイントは、コロン(:)とインデント(字下げ)です。Pythonではインデントによってコードブロックを定義するため、インデントが正しくないとエラーになります。