[python]for文の基本

for文の基本的な使い方

繰り返し処理をする場合はfor文が使えます。
#for文の使い方
#for 変数名 in シーケンス:
#	繰り返し処理1
#	繰り返し処理2

for i in range(3):
	print(i)
#[結果]
#0
#1
#2
for文のあとのコロン:は忘れないようにしてください。
繰り返し処理はインデントで字下げを行います。
シーケンスは文字列・集合・リスト・タプル・辞書など順番に取り出せる型のことです。
文字列では1文字ずつ、辞書ではキーを取り出します。
繰り返し処理時に以後の処理を省いて次のループに進みたい場合はcontinueを使います。
for i in range(3):
	if(i%2==0):
		print(f"i={i}:even")
		continue
	print(f"i={i}:odd")
#[結果]
#i=0:even
#i=1:odd
#i=2:even
また繰り返し処理を途中で終わらせたい場合はbreakを使います。
breakはcontinueと違って次からのループ処理はされません。
また、繰り返し処理がネストされている場合はbreakは一番内側のループから抜けます。
for i in range(3):
	print(f"i={i}")
	if(i==1):
		print("break")
		break
#[結果]
#i=0
#i=1
#break
for文のループが全て終わった後に処理をさせたいときはelseを使います。
for i in range(3):
	print(f"i={i}")
else:
	print("else")
#[結果]
#i=0
#i=1
#i=2
#else
for文でelse文を使うと途中でbreakさせた場合にはelse文は実行されません。
これを使うと無事にfor文が終了したときの処理が書けます。
for i in range(3):
	print(f"i={i}")
	if(i==1):
		print("break")
		break
else:
	#ここは実行されません。
	print("else")

#[結果]
#i=0
#i=1
#break

2重ループ

ループがネストされている場合、breakは一番内側のループから抜けます。
for i in range(3):
	for j in range(3):
		if(i==1 and j==1):
			print(f"({i},{j}):break")
			break
		print(f"({i},{j})")
#[結果]
#(0,0)
#(0,1)
#(0,2)
#(1,0)
#(1,1):break
#(2,0)
#(2,1)
#(2,2)
もし、外側のループから抜けたい場合はelseとcontinueを使えば外側のループから抜けれます。
for i in range(3):
	for j in range(3):
		if(i==1 and j==1):
			print(f"({i},{j}):break_1")
			break
		print(f"({i},{j})")
	else:
		#内側のfor文が無事に終了した場合
		print(f"({i},{j}):continue")
		continue
	#内側のfor文を途中で抜けた場合に実行される
	print(f"({i},{j}):break_2")
	break
#[結果]
#(0,0)
#(0,1)
#(0,2)
#(0,2):continue
#(1,0)
#(1,1):break_1
#(1,1):break_2
または、ループ用のフラグ変数を用意して、if文の条件分岐で抜けることもできます。
for i in range(3):
	flag=False
	for j in range(3):
		if(i==1 and j==1):
			print(f"({i},{j}):break_1")
			flag=True
			break
		print(f"({i},{j})")
	if(flag):
		print(f"({i},{j}):break_2")
		break
#[結果]
#(0,0)
#(0,1)
#(0,2)
#(1,0)
#(1,1):break_1
#(1,1):break_2

ページ情報
タイトル
[python]for文の基本
URL
https://www.nomuramath.com/ga7qj5vi/
SNSボタン