前書き
Pythonでfor loopsとwhile loopsを使用すると、タスクを自動化して効率的に繰り返すことができます。
ただし、外部要因がプログラムの実行方法に影響する場合があります。 この場合、プログラムでループを完全に終了するか、ループの一部をスキップしてから続行するか、その外部要因を無視することができます。 これらのアクションは、break
、continue
、およびpass
ステートメントを使用して実行できます。
ブレイクステートメント
Pythonでは、break
ステートメントは、外部条件がトリガーされたときにループを終了する機会を提供します。 break
ステートメントは、ループステートメントの下のコードブロック内に配置します。通常は、条件付きのif
ステートメントの後に配置します。
for
ループでbreak
ステートメントを使用する例を見てみましょう。
number = 0
for number in range(10):
if number == 5:
break # break here
print('Number is ' + str(number))
print('Out of loop')
この小さなプログラムでは、変数number
は0で初期化されます。 次に、変数number
が10未満である限り、for
ステートメントがループを構築します。
for
ループ内には、if変数number
が整数5、thenと同等であるという条件を表すif
ステートメントがあります。ブレーク。
ループ内には、break
ステートメントの後にあるため、ループが中断するまでfor
ループの各反復で実行されるprint()
ステートメントもあります。
ループから外れたことを知るために、for
ループの外側に最後のprint()
ステートメントを含めました。
このコードを実行すると、出力は次のようになります。
OutputNumber is 0
Number is 1
Number is 2
Number is 3
Number is 4
Out of loop
これは、整数number
が5と同等であると評価されると、プログラムがbreak
ステートメントでそうするように指示されているため、ループが中断することを示しています。
break
ステートメントにより、プログラムはループから抜け出します。
声明を続ける
continue
ステートメントは、外部条件がトリガーされるループの部分をスキップするオプションを提供しますが、ループの残りの部分を完了するために続行します。 つまり、ループの現在の反復は中断されますが、プログラムはループの先頭に戻ります。
continue
ステートメントは、通常、条件付きのif
ステートメントの後に、ループステートメントの下のコードブロック内にあります。
上記のBreak Statementセクションと同じfor
ループプログラムを使用して、break
ステートメントではなくcontinue
ステートメントを使用します。
number = 0
for number in range(10):
if number == 5:
continue # continue here
print('Number is ' + str(number))
print('Out of loop')
break
ステートメントではなくcontinue
ステートメントを使用する場合の違いは、変数number
が5と同等であると評価された場合、中断にもかかわらずコードが続行されることです。 出力を見てみましょう。
OutputNumber is 0
Number is 1
Number is 2
Number is 3
Number is 4
Number is 6
Number is 7
Number is 8
Number is 9
Out of loop
ここでは、Number is 5
が出力で発生することはありませんが、ループはそのポイントの後も続き、ループを終了する前に6〜10の数値の行を出力します。
continue
ステートメントを使用して、深くネストされた条件付きコードを回避したり、拒否したい頻繁に発生するケースを排除してループを最適化したりできます。
continue
ステートメントを使用すると、プログラムはループ内で発生する特定の要素をスキップしますが、ループの残りの部分を続行します。
パスステートメント
外部条件がトリガーされると、pass
ステートメントを使用すると、ループに影響を与えることなく条件を処理できます。 break
またはその他のステートメントが発生しない限り、すべてのコードが引き続き読み取られます。
他のステートメントと同様に、pass
ステートメントは、ループステートメントの下のコードブロック内にあります。通常は、条件付きのif
ステートメントの後です。
上記と同じコードブロックを使用して、break
またはcontinue
ステートメントをpass
ステートメントに置き換えましょう。
number = 0
for number in range(10):
if number == 5:
pass # pass here
print('Number is ' + str(number))
print('Out of loop')
if
条件ステートメントの後に発生するpass
ステートメントは、プログラムにループの実行を継続し、変数number
がその反復の1つで5と同等であると評価するという事実を無視するように指示しています。
プログラムを実行し、出力を検討します。
OutputNumber is 0
Number is 1
Number is 2
Number is 3
Number is 4
Number is 5
Number is 6
Number is 7
Number is 8
Number is 9
Out of loop
このプログラムでpass
ステートメントを使用すると、プログラムに条件ステートメントがない場合とまったく同じようにプログラムが実行されることがわかります。 pass
ステートメントは、その条件を無視して、通常どおりプログラムを実行し続けるようにプログラムに指示します。
pass
ステートメントは、最小限のクラスを作成するか、新しいコードで作業し、詳細を打ち出す前にアルゴリズムレベルで考えるときにプレースホルダーとして機能します。
結論
Pythonのbreak
、continue
、およびpass
ステートメントを使用すると、コードでfor
ループとwhile
ループをより効果的に使用できます。
break
およびpass
ステートメントをさらに操作するには、プロジェクトチュートリアル「https://www.digitalocean.com/community/tutorials/how-to-create-a-twitterbot-with- python-3-and-the-tweepy-library [Python3とTweepyライブラリを使用してTwitterbotを作成する方法]。」