Python For および While ループ: Enumerate、Break、Continue ステートメント
ループとは何ですか?
ループでは、特定の条件が満たされるまで、コードのブロックを何回でも実行できます。 これらの使用法はプログラミングではかなり一般的です。 For ループ、while ループ、dowhile などを備えた他のプログラミング言語とは異なります。
Forループとは何ですか?
for ループは、シーケンスの要素を反復処理するために使用されます。 これは、「n」回繰り返したいコードがある場合によく使用されます。
While ループとは
While ループは、コードのブロックを繰り返すために使用されます。 コード ブロックを XNUMX 回実行するのではなく、特定の条件が満たされるまでコード ブロックを複数回実行します。
「whileループ」の使い方
while ループは「if ステートメント」とまったく同じことを行いますが、コード ブロックを XNUMX 回実行する代わりに、コードの開始点に戻り、プロセス全体を再度繰り返します。
構文
while expression Statement
例:
# #Example file for working with loops # x=0 #define a while loop while(x <4): print(x) x = x+1
期待される出力:
0 1 2 3
- コード行 4: 変数 x は 0 に設定されます
- コード行 7: While ループは条件 x<4 をチェックします。 x の現在の値は 0 です。条件は true です。 制御の流れが while ループに入る
- コード行 8: x の値が出力されます
- コード行 9: x は 1 ずつインクリメントされます。制御の流れは行 7 に戻ります。x の値は 1 で、4 より小さいです。条件は true で、再び while ループが実行されます。 これは、x が 4 になり、while 条件が false になるまで続きます。
「Forループ」の使い方
In Python「forループ」は イテレータ。
while ループと同様に、プログラムを繰り返すために「For ループ」も使用されます。
ただし、条件の true または false に依存する while ループとは異なります。 「For ループ」は、反復する必要がある要素によって異なります。
例:
# #Example file for working with loops # x=0 #define a while loop # while(x <4): # print x # x = x+1 #Define a for loop for x in range(2,7): print(x)
期待される出力:
2 3 4 5 6
For ループは、範囲内で宣言された数値を繰り返します。
たとえば、
ループ 範囲 (2,7) の x の場合
このコードを実行すると、2 から 7 までの数字 (2,3,4,5,6、7、XNUMX、XNUMX、XNUMX) が出力されます。 このコードでは、数値 XNUMX は範囲内とはみなされません。
For ループは、数値だけでなく他のもののセットにも使用できます。 次のセクションで薄く見ていきます。
文字列のForループの使い方
このステップでは、「for ループ」が数値以外のものにもどのように使用できるかを見ていきます。
例:
#use a for loop over a collection Months = ["Jan","Feb","Mar","April","May","June"] for m in Months: print(m)
期待される出力:
Jan Feb Mar April May June
コード行 3: 月 (「Jan、Feb、Mar、April、May、 June」) を変数 Months に格納します。
コード行 4: Months の各値に対して for ループを繰り返します。 変数 m に格納されている月の現在の値
コード行 5: 月を出力します。
For ループでの Break ステートメントの使用方法
ブレークポイントは、for ループの実行を中断または終了できるようにする For ループ固有の関数です。
例:
#use a for loop over a collection #Months = ["Jan","Feb","Mar","April","May","June"] #for m in Months: #print m # use the break and continue statements for x in range (10,20): if (x == 15): break #if (x % 2 == 0) : continue print(x)
期待される出力:
10 11 12 13 14
この例では、10 から 20 までの数字を宣言しましたが、for ループを 15 で終了し、それ以上実行を停止したいとします。そのために、(x==15): break を定義して break 関数を宣言します。これにより、コードが 15 の数字を呼び出すとすぐにプログラムが終了します。コード行 10 は、範囲 (10, 20) の間で変数 x を宣言します。
- コード行 11 は、x==15 でのブレークポイントの条件を宣言します。
- コード行 12 は、番号 15 に到達するまでステップをチェックして繰り返します。
- コード行 13 結果を出力に出力します
Forループでの「Continue文」の使い方
Continue 関数は、名前が示すように、for ループの現在の反復を終了しますが、残りの反復の実行は続行します。
例
#use a for loop over a collection #Months = ["Jan","Feb","Mar","April","May","June"] #for m in Months: #print m # use the break and continue statements for x in range (10,20): #if (x == 15): break if (x % 5 == 0) : continue print(x)
期待される出力:
11 12 13 14 16 17 18 19
Continue ステートメントは、リストから特定の値を取得する場合に for ループで使用できます。
この例では、10 ~ 20 の値を宣言していますが、これらの数値のうち、5 で割り切れない数値、つまり 5 で割ったときに XNUMX にならない数値のみが必要です。
したがって、範囲 (10,11、12、19,20、…、3、10,15,20) では、5 で割り切れる数字は XNUMX つ (XNUMX、XNUMX、XNUMX) のみで、残りは割り切れません。
したがって、番号 10,15、20、および XNUMX を除いて、「for ループ」は続行されず、これらの番号が出力として出力されます。
- コード行 10 では、範囲 (10, 20) の変数 x を宣言しています。
- コード行 12 は、x を 5 で割った = 0 の条件を継続することを宣言します。
- コード行 13 は結果を出力します
enumerate()とは何か Python?
Python の enumerate() は、反復可能オブジェクトの各項目にインデックスを割り当てるために使用される組み込み関数です。 現在の項目を追跡しながら反復可能なオブジェクトにループを追加し、オブジェクトを列挙可能な形式で返します。 このオブジェクトを for ループ内で使用し、list() メソッドを使用してリストに変換できます。
例:
列挙関数 リスト内のメンバーの番号付けまたはインデックス付けに使用されます。
たとえば、月(Jan、Feb、Marc、…June)に番号を付けたいとします。そのため、番号を列挙する変数 i を宣言し、m はリスト内の月番号を出力します。
#use a for loop over a collection Months = ["Jan","Feb","Mar","April","May","June"] for i, m in enumerate (Months): print(i,m) # use the break and continue statements #for x in range (10,20): #if (x == 15): break #if (x % 5 == 0) : continue #print x
期待される出力:
0 Jan 1 Feb 2 Mar 3 April 4 May 5 June
コードが実行されると、列挙関数の出力は、(0-Jan)、(1-Feb)、(2-March) などのインデックス番号が付いた月の名前を返します。
- コード行3は月のリスト[Jan、Feb、…Jun]を宣言します。
- コード行4はForループの変数iとmを宣言します。
- コード行 5 は結果を出力し、残りの月を列挙するために再度 For ループに入ります。
実用例
For ループで同じステートメントを何度も繰り返す別の例を見てみましょう。
Python ループ | すべての演習に使用できる実用的なコード |
---|---|
while ループのコード |
x=0 while (x<4): print (x) x= x+1 |
For ループの簡単な例 |
x=0 for x in range (2,7): print (x) |
文字列内での for ループの使用 |
Months = ["Jan","Feb","Mar","April","May","June"] for m in (Months): print (m) |
for ループ内でブレーク ステートメントを使用する |
for x in range (10,20): if (x == 15): break print (x) |
for ループでの Continue ステートメントの使用 |
for x in range (10,20): if (x % 5 == 0): continue print (x) |
「for ループ」を使用した「列挙関数」のコード |
Months = ["Jan","Feb","Mar","April","May","June"] for i, m in enumerate (Months): print (i,m) |
for ループを使用して同じステートメントを何度も繰り返す方法
for ループを使用すると、同じステートメントを何度も繰り返すこともできます。 この例では、「guru99」という単語を XNUMX 回出力しています。
例: 同じステートメントを何度も繰り返すために、変数 i で数値を宣言しました (i は 123)。 したがって、以下に示すようにコードを実行すると、変数 ( i in 99) に対して宣言された数の何倍ものステートメント (guru123) が出力されます。
for i in '123': print ("guru99",i,)
期待される出力:
guru99 1 guru99 2 guru99 3
他のプログラミング言語と同様に、 Python ループも使用しますが、さまざまなループを使用する代わりに、「While ループ」と「for ループ」の 2 つのループのみに制限されます。
- While ループは、条件文が true か false かに基づいて実行されます。
- for ループはイテレータと呼ばれ、条件セットに基づいて要素を繰り返します。
- Python Forループは、他のさまざまなもののセットにも使用できます(ループする要素のコレクションを指定します)
- ブレークポイントは、For ループで特定の時点でプログラムを中断または終了するために使用されます。
- Continue ステートメントはステートメントの出力を継続し、条件セットに従って結果を出力します。
- 「for ループ」の列挙関数は、インデックス番号を使用して調べているコレクションのメンバーを返します。
Python 2例
上記のコードは Python 3つの例、実行したい場合 Python 2 次のコードを検討してください。
# How to use "While Loop" #Example file for working with loops # x=0 #define a while loop while(x <4): print x x = x+1 #How to use "For Loop" #Example file for working with loops # x=0 #define a while loop # while(x <4): # print x # x = x+1 #Define a for loop for x in range(2,7): print x #How to use For Loop for String #use a for loop over a collection Months = ["Jan","Feb","Mar","April","May","June"] for m in Months: print m #How to use break statements in For Loop #use a for loop over a collection #Months = ["Jan","Feb","Mar","April","May","June"] #for m in Months: #print m # use the break and continue statements for x in range (10,20): if (x == 15): break #if (x % 2 == 0) : continue print x #How to use "continue statement" in For Loop #use a for loop over a collection #Months = ["Jan","Feb","Mar","April","May","June"] #for m in Months: #print m # use the break and continue statements for x in range (10,20): #if (x == 15): break if (x % 5 == 0) : continue print x #How to use "enumerate" function for "For Loop" #use a for loop over a collection Months = ["Jan","Feb","Mar","April","May","June"] for i, m in enumerate (Months): print i,m # use the break and continue statements #for x in range (10,20): #if (x == 15): break #if (x % 5 == 0) : continue #print x
出力:
0 1 2 3 2 3 4 5 6 Jan Feb Mar April May June 10 11 12 13 14 11 12 13 14 16 17 18 19 0 Jan 1 Feb 2 Mar 3 April 4 May 5 June