Python break、continue、pass ステートメントの例

⚡ スマートサマリー

Python break、continue、pass ステートメントはループの実行フローを制御します。break ステートメントはループを終了させ、continue ステートメントは現在のイテレーションをスキップし、pass ステートメントはループ、関数、またはクラス内で実行されても何も実行しないプレースホルダーとして機能します。

  • 🔘 ブレーク: break文はループを即座に停止し、制御をその次の行に移します。
  • ☑️ 続行: continue文は、現在の反復処理の残りをスキップして、次の反復処理を開始します。
  • パス: pass文は何もせず、後から追加されるコードのプレースホルダーとして機能します。
  • 🧪 入れ子になったループ: breakまたはcontinueは、最も内側のループのみに影響を与え、外側のループは実行され続けます。
  • 🛠️ 両方のループ: これら3つの文はすべて、forループとwhileループ内で動作し、通常の反復処理の流れを変更します。
  • 🤖 AIによる支援: AIアシスタントとGitHub Copilotは、break、continue、passの正しい使い方を提案し、説明します。

Python break、continue、pass ステートメント

ループの概念は、ほぼすべてのプログラミング言語で利用できます。 Python ループはリスト、タプル、文字列、辞書、セットを反復処理するのに役立ちます。 Python 「for」と「while」。条件が満たされなくなるまで、コード ブロックはループ内で複数回実行されます。

ループ制御ステートメントは実行フローを中断し、必要に応じて反復を終了/スキップします。 Python break と continue はループ内で使用され、ループのフローを標準の手順から変更します。

for ループまたは while ループは、指定された条件が失敗するまで反復することを目的としています。 Break または continue ステートメントを使用すると、ループの流れが通常の方法から変更されます。

Python breakステートメント

Break ステートメントは、それが使用されているループの終了を処理します。 入れ子になったループ内で Break ステートメントが使用されている場合、現在のループは終了し、フローはループの後に続くコードから続行されます。

Break ステートメントのフローチャートは次のとおりです。

Python breakステートメント

フローチャートに含まれる手順は次のとおりです。

ステップ1) ループの実行が開始されます。

ステップ2) ループ条件が true の場合、ステップ 2 が実行され、ループの本体が実行されます。

ステップ3) ループの本体に Break ステートメントがある場合、ループは終了してステップ 6 に進みます。

ステップ4) ループ条件が実行されて完了すると、ステップ 4 の次の反復に進みます。

ステップ5) ループ条件が false の場合、ループを終了し、ステップ 6 に進みます。

ステップ6) ループの終わり。

Break ステートメントの実行フロー

for ループの実行が開始されると、if 条件がチェックされます。 もし true条件が満たされない場合、break文が実行され、forループは終了します。条件が満たされない場合、forループ内のコードが実行されます。

Break ステートメントの実行フロー

while ループが実行されると、if 条件がチェックされます。 もしそれが 本当、 break文が実行され、whileループが終了します。条件が偽の場合は、whileループ内のコードが実行されます。

Break ステートメントの実行フロー

例: for ループ内の Break ステートメント

リスト my_list = ['Siya', 'Tiya', 'Guru', 'ダクシュ', 'リヤ', 'Guru'] は for ループを使用してループされます。私たちは名前 ' の検索に興味があります。Guru'リストmy_listから。

for ループ内では、if 条件がリストの各項目を名前 ' と比較します。Guru条件が真になると、break文が実行され、ループが終了します。

Break ステートメントを使用した実際の例は次のとおりです。

my_list = ['Siya', 'Tiya', 'Guru', 'Daksh', 'Riya', 'Guru'] 

for i in range(len(my_list)):
    print(my_list[i])
    if my_list[i] == 'Guru':
        print('Found the name Guru')
        break
        print('After break statement')

print('Loop is Terminated')

期待される出力:

Siya
Tiya
Guru
Found the name Guru
Loop is Terminated

例: while ループ内の Break ステートメント

my_list = ['Siya', 'Tiya', 'Guru', 'Daksh', 'Riya', 'Guru'] 
i = 0

while True:
    print(my_list[i])
    if (my_list[i] == 'Guru'):
        print('Found the name Guru')
        break
        print('After break statement')
    i += 1

print('After while-loop exit')

期待される出力:

Siya
Tiya
Guru
Found name Guru
After while-loop exit

例: ネストされたループ内の Break ステートメント

この例では、2 つの for ループがあります。 どちらの for ループも 0 から 3 の範囲で反復されます。2 番目の for ループでは、XNUMX 番目の for ループのインデックスの値が XNUMX の場合に中断するという条件を追加しました。

したがって、break ステートメントがあるため、2 番目の for ループは 3 と XNUMX に対して反復されません。

for i in range(4):
    for j in range(4):          
        if j==2:    
            break
        print("The number is ",i,j);  

期待される出力:

The number is  0 0
The number is  0 1
The number is  1 0
The number is  1 1
The number is  2 0
The number is  2 1
The number is  3 0
The number is  3 1

Python ステートメントを続ける

その 続ける ステートメントはその後に続くコードをスキップし、制御は次の反復の先頭に戻されます。

構文:

continue

フローチャートを続ける

Python ステートメントを続ける

フローチャートに含まれる手順は次のとおりです。

ステップ1) ループの実行が開始されます。

ステップ2) ループ内のコードの実行が完了します。 ループ内に継続ステートメントがある場合、制御はステップ 4、つまり次の反復のループの開始に戻ります。

ステップ3) ループ内のコードの実行が完了します。

ステップ4) continue ステートメントがある場合、または本体内のループの実行が完了した場合は、次の反復が呼び出されます。

ステップ5) ループの実行が完了すると、ループは終了し、ステップ 7 に進みます。

ステップ6) ステップ 1 のループ条件が失敗した場合、ループを終了してステップ 7 に進みます。

ステップ7) ループの終わり。

Continue ステートメントの実行フロー

for ループは、与えられた my_list 配列をループします。for ループ内で、if 条件が実行されます。条件が true、 continue ステートメントが実行され、制御は次の反復のループの開始に渡されます。

コードの流れは以下のようになります。

Continue ステートメントの実行フロー

while ループが実行されると、if 条件がチェックされます。 本当、 continue文が実行されます。制御は次のイテレーションのためにwhileループの先頭に戻ります。条件が偽の場合、whileループ内のコードが実行されます。

コードの流れは以下のようになります。

Continue ステートメントの実行フロー

例 : for ループ内で続行

for i in range(10):    
    if i == 7:
        continue  
    print("The Number is :" , i)

期待される出力:

The Number is : 0
The Number is : 1
The Number is : 2
The Number is : 3
The Number is : 4
The Number is : 5
The Number is : 6
The Number is : 8
The Number is : 9

例 : while ループ内で続行

i = 0
while i <= 10:    
    if i == 7:
        i += 1
        continue  
    print("The Number is  :" , i)
    i += 1

期待される出力:

The Number is  : 0
The Number is  : 1
The Number is  : 2
The Number is  : 3
The Number is  : 4
The Number is  : 5
The Number is  : 6
The Number is  : 8
The Number is  : 9
The Number is  : 10

例: ネストされたループ内で続行する

以下の例は、2 つの for ループの使用を示しています。 両方の for ループは 0 ~ 3 の範囲で反復されます。2 番目の for ループには、XNUMX 番目の for ループ インデックスの値が XNUMX である場合、次の条件があります。 続ける。 だから、 続ける ステートメントでは、2 番目の for ループは 3 の反復をスキップし、XNUMX に進みます。

for i in range(4):
    for j in range(4):          
        if j==2:    
            continue
        print("The number is ",i,j);

期待される出力:

The number is  0 0
The number is  0 1
The number is  0 3
The number is  1 0
The number is  1 1
The number is  1 3
The number is  2 0
The number is  2 1
The number is  2 3
The number is  3 0
The number is  3 1
The number is  3 3

Python pass ステートメント

Python pass ステートメントは、後で実装されることを意図したループ、関数、クラス、if ステートメント内のプレースホルダーとして使用されます。

構文

pass

passステートメントとは何か Python?

Python passはヌル文です。 Python インタープリタは pass ステートメントに遭遇するが、何も実行せず無視される。

pass ステートメントをいつ使用するか?

関数またはクラスがあり、その本体が空のままになっているとします。将来そのコードを書く予定です。 Python インタープリターは、空の本文に遭遇するとエラーをスローします。

関数またはクラスの本体内にコメントを追加することもできますが、インタープリターはコメントを無視し、エラーをスローします。

pass ステートメントは、関数本体またはクラス本体の内部で使用できます。 実行中に、インタプリタは pass ステートメントに遭遇すると無視し、エラーを発生させずに続行します。

例: 関数内の pass ステートメント

この例では、関数内にパスが追加されています。 以下に示すように、関数が呼び出されたときに実行されます。

def my_func():
    print('pass inside function')
    pass
my_func()

期待される出力:

pass inside function

例: クラス内の pass ステートメント

以下の例では、print ステートメントの後に pass ステートメントが続く空のクラスだけを作成しています。 pass ステートメントは、クラス「My_Class」内のコードが将来実装されることを示します。

classMy_Class:
print("Inside My_Class")    
pass

出力:

Inside My_Class

例: ループ内の pass ステートメント

以下の例では、文字列「Guru' は for ループ内で使用されます。if 条件は文字 'r' をチェックし、print 文の後に pass 文が実行されます。

# Pass statement in for-loop
test = "Guru"
for i in test: 
    if i == 'r': 
        print('Pass executed') 
        pass
    print(i)

期待される出力:

G
u
Pass executed
r
u

例 : if ループ内でステートメントを渡します

この例では、 if ループ a の値をチェックし、条件が true の場合は、「実行されたパス」に続いてパスというステートメントを出力します。

a=1
if a==1:
    print('pass executed')
    pass

期待される出力:

pass executed

Break および continue ステートメントを使用するのはどのような場合ですか?

  • A 破る ステートメントをループ内で使用すると、ループが終了して終了します。 ネストされたループ内で使用すると、現在のループから抜け出します。
  • A 続ける このステートメントをループ内で使用すると、現在の実行が停止され、制御はループの先頭に戻ります。

Break ステートメントと continue ステートメントの主な違いは、break キーワードが検出されるとループを終了することです。

continue キーワードの場合、実行中の現在の反復は停止され、次の反復に進みます。

よくあるご質問

continue文は、現在のループの残りのイテレーションをスキップして、次のイテレーションに進みます。pass文は何も実行しません。ループ、関数、またはクラスの構文的有効性を維持するためのプレースホルダーにすぎません。

break文は、それを含む最も内側のループのみを終了させるため、外側のループは実行を継続します。複数のループを一度に終了させるには、フラグ変数を使用するか、ループを関数に移動してreturn文を使用します。

はい。ループのelseブロックは、break文を実行せずにループが正常に終了した場合にのみ実行されます。これは、シーケンス内のすべての項目をチェックした後に「見つかりませんでした」というメッセージを表示するなど、検索ロジックに役立ちます。

Python これは SyntaxError を発生させます。なぜなら、break と continue は for ループまたは while ループ内でのみ有効だからです。ループの外でプレースホルダーが必要な場合は、代わりに pass ステートメントを使用してください。pass ステートメントは、ステートメントが期待される場所であればどこでも使用できます。

break または continue が実行されると、現在のイテレーションから制御が離れるため、それ以降の行に記述されたステートメントは実行できなくなります。上記の例では、break の後の print() 呼び出しは実行されず、事実上デッドコードとなります。

break文は最も近いループを抜けますが、関数自体は実行を継続します。return文は関数全体を即座に抜け出し、値を返して、その関数内のすべてのループを同時に終了します。

ChatGPTなどのAIアシスタントは、平易な説明からループ制御コードを生成し、ループが早期に終了する理由を説明し、不適切なbreak文やcontinue文を指摘し、pass、continue、breakのどれがロジックに最適かを提案します。

はい。GitHub Copilotは、コメントや周辺のコードからbreak、continue、passを自動補完します。Agentic AIツールはさらに進化し、ループフローのリファクタリング、break後の不要コードの削除、ファイル全体の制御フローバグの自動修正などを行います。