AI資格ドリル
資格を選ぶ↓

Python3エンジニア認定基礎試験 用語解説

ループのelse節とは

for 文や while 文に付けられる節。break を実行せずにループが終了したときに実行される。break・return・例外で途中終了した場合は実行されない。探したが見つからなかった場合の処理を置く書き方に使われる。

まず押さえる結論

ループのelse節は、Python3エンジニア認定基礎試験の「第4章 制御構造ツール」に出てくる用語です。定義だけでなく、どの場面で使う言葉か、何と混同しやすいか、問題文のどの表現で判断するかまで確認します。

情報源と編集区分

公式範囲を確認し、具体例・誤答例・判断手順は当サイトが編集。 一次情報確認日: 2026-09-18。

試験概要(公式)

混同しやすい用語との差

ループのelse節 / break文

for文・while文のelse節は、breakを実行せずにループが終了したときに実行されます。

break・return・例外で途中終了した場合、else節は実行されません。

見分け方: ループが最後まで回りきったか、途中で抜けたかを先に確認します。

比較記事でさらに確認する

試験での問われ方

01

定義の言い換え

用語そのものではなく、説明文の一部を言い換えて出されることがあります。

02

似た概念との比較

同じ章の用語と入れ替えた選択肢に注意します。対象、目的、使う場面を分けます。

03

具体例からの判断

問題文の事例が、定義のどの部分に対応しているかを先に確認します。

誤答しやすいポイント

「第4章 制御構造ツール」の問題で、取り違えやすい組み合わせです。

  • ループの else 節が実行される条件。break で抜けたときは実行されず、使い切って終わったときに実行される。return や例外で途中終了した場合も実行されない。
  • range の終了値が含まれないこと。range(2, 10) は 9 までで、10 は含まれない。
  • デフォルト引数の評価は定義時に一度だけ。可変オブジェクトをデフォルト値にすると呼び出し間で状態が残る。

関連する確認問題

第4章 制御構造ツール / break・continue・ループのelse

for ループに else 節を付けたとき、else 節が実行されるのはどの場合か。

正解は「ループが最後まで回り切り、break で抜けなかったとき」である。公式チュートリアルは「break を実行せずにループが終了すると、else 節が実行されます」と述べ、for 文については「ループ処理の最後のイテレーションが実行されたあと、つまり break が発生しなかった場合に実行されます」と記している。break で抜けた場合は else 節は実行されない。あわせて公式は「return や例外の発生によってループが途中で終了した場合にも else 節の実行はスキップされます」とも述べている。continue については公式に明示の記述は無いが、continue は今回の反復を飛ばして次へ進めるだけでループを終わらせないため、最後まで回り切れば else 節は実行される。反復対象が空の場合も本体は一度も実行されないままループは正常に終わるので else 節は実行され、「空のときだけ」という限定は誤りである。この性質は、公式が挙げる素数探索の例のように「探したが見つからなかった場合」の処理を else 節に置く書き方に使われる。

第4章 制御構造ツール / break・continue・ループのelse

for num in range(2, 10): の中で、num % 2 == 0 のとき「偶数 num を見つけた」を出力してcontinueし、それ以外は「奇数 num を見つけた」を出力する処理を書くと、どのような出力になるか。

正解は「偶数のときにその回の残りの処理をスキップし、2から9まで偶数と奇数の行が交互に出力される」である。公式チュートリアル4.4はこの例を示し、num % 2 == 0のとき「偶数 num を見つけた」を出力してcontinueし、それ以外は「奇数 num を見つけた」を出力するため、2から9まで偶数と奇数の行が交互に出力されると説明している。continue文はループの次のイテレーションを実行する文であり、内側のfor文・while文から抜け出すbreak文とは役割が異なる。

第4章 制御構造ツール / break・continue・ループのelse

def first_negative(nums): の中で for n in nums: if n < 0: return n を書き、for ループに else: print("負の数なし") を付け、最後に return None とした。first_negative([3, -1, 2]) の結果を print() で表示し、続けて first_negative([3, 1, 2]) を呼び出した。出力として正しいものはどれか。

正解は「-1 と "負の数なし" の2行が、この順で出力される」である。公式チュートリアル4.5は、ループが break によって終了した場合は else 句は実行されず、return や例外の発生によってループが途中で終了した場合にも else 節の実行はスキップされると述べている。1回目の呼び出しは -1 に達した時点で return するため else が実行されず、print() が -1 を表示する。2回目は負の数がなくループが最後まで進むので else が実行され、「負の数なし」が出力される。2回目の戻り値 None は print() で表示していないので出力されない。

同じ章で確認したい用語

到達チェック

  • ループのelse節を一文で説明できる
  • 同じ章の似た用語と違いを説明できる
  • 問題文の具体例から、ループのelse節に関係する論点を拾える
  • 関連問題を解き、誤答した選択肢の理由を確認できる

執筆: ミナト編集部(運営者情報を見る)