Python forループとwhileループ(例付き)

⚡ スマートサマリー

Python ループは、特定の条件が満たされるまでコードブロックを繰り返し実行します。forループとwhileループは、break、continue、enumerate文とともに、繰り返し処理の回数を制御します。以下の例でその様子を示します。

  • 🔁 ループ: ループは、条件が満たされるまでコードブロックを繰り返し実行します。
  • 🔢 ループの場合: forループは、範囲、リスト、文字列などのシーケンスを反復処理します。
  • ♻️ Whileループ: whileループは、条件が真である限り繰り返し実行されます。
  • ⛔ ブレーク: break文は、指定された地点でループを即座に抜け出します。
  • ⏭️ 続行: continue文は現在のイテレーションをスキップして次のイテレーションに進みます。
  • 🔖 列挙: enumerate() 関数は各項目をインデックスとペアにしますが、ping.

Python forループとwhileループ

ループとは何ですか?

ループでは、特定の条件が満たされるまで、コードのブロックを何回でも実行できます。 これらの使用法はプログラミングではかなり一般的です。 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
  • Code 4行目:変数xは0に設定されます
  • Code 7行目:whileループは条件x<4をチェックします。現在のxの値は0です。条件は真です。制御フローはwhileループに入ります。
  • Code 8行目:xの値が印刷されます
  • Code 9行目:xの値が1増加します。制御フローは7行目に戻ります。この時点でxの値は1となり、4より小さくなります。条件は真となり、再びwhileループが実行されます。これはxが4になり、while条件が偽になるまで続きます。

「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

Code 3行目:変数Monthsに月(「1月、2月、3月、4月、5月、6月」)を格納します。

Code 4行目:Monthsの各値に対してforループを繰り返します。Monthsの現在の値は変数mに格納されます。

Code 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という数値を呼び出すとすぐにプログラムが終了します。 Code 10行目:変数xを範囲(10, 20)で宣言する

  • Code 11行目では、x==15でのブレークポイントの条件を宣言します。
  • Code 12行目は、15番に到達するまで手順をチェックして繰り返します。
  • Code 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 ループ」は続行されず、これらの番号が出力として出力されます。

  • Code 10行目で、範囲(10, 20)の変数xを宣言します。
  • Code 12行目 x÷5=0の条件を宣言する 続ける
  • Code 13行目:結果を出力する

enumerate()とは何か Python?

Python の enumerate() は、反復可能なオブジェクトの各項目にインデックスを割り当てるために使用される組み込み関数です。反復可能なオブジェクトにループを追加しながら、ping trac現在の項目のk番目の要素を取得し、列挙可能な形式でオブジェクトを返します。このオブジェクトは、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) などのインデックス番号が付いた月の名前を返します。

  • Code 3行目では月のリスト[1月、2月、…6月]を宣言しています。
  • Code 4行目では、Forループ用の変数iとmを宣言しています。
  • Code 5行目では結果が出力され、残りの月を列挙するために再びForループに入ります。

実用例

For ループで同じステートメントを何度も繰り返す別の例を見てみましょう。

Python ループ ワーキング Code すべてのエクササイズについて
Code for 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)
Code 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

よくあるご質問

forループはリストや範囲など、既知のシーケンスを反復処理しますが、whileループは条件が偽になるまで実行され続けます。項目が分かっている場合はforループを、無限に繰り返される場合はwhileループを使用してください。

break文はループ全体を即座に終了させますが、continue文は現在のイテレーションのみをスキップして次のイテレーションに進みます。breakはループを完全に停止させますが、continueはループの実行を継続させます。

pass ステートメントは、何も行わない null プレースホルダーです。これは、次のような場合に使用されます。 Python 構文ではステートメントが必要ですが、空のループ本体や後で完成させる予定のスタブなど、アクションは必要ありません。

はい。ループのelseブロックは、ループがbreakに引っかからずに正常に終了した場合にのみ実行されます。これは検索ロジックに便利で、例えば、一連の項目をすべてスキャンした後に「見つかりませんでした」というメッセージを表示する場合に有効です。

while True: を使用すると、処理を永久に繰り返し、条件が満たされたら break 文で終了します。 Python には組み込みの do-while ループがないため、while True と break を組み合わせるのが一般的なエミュレーション方法です。

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

はい。AIアシスタントは、簡単な説明からforループとwhileループを生成し、エラーを説明し、無限ループやオフバイワンバグを検出し、リスト内包表記やenumerate()などのよりクリーンなインデックス付け方法を提案します。

はい。GitHub Copilotは、コメントや近くのコードからforループ、whileループ、break、continue、enumerateを自動補完します。Agentic AIツールはさらに進化し、ループのリファクタリングやファイル全体のバグ修正を自動的に行います。