Python | for文とrange()で回数指定で反復処理する方法

2023-02-26Python ループ,Python

Python | for文とrange()で回数指定で反復処理する方法

Pythonのrange()を使って主に、回数の決まった反復(ループ)処理を実装する方法とサンプルコードです。

Pythonでのrange文の基本形

Pythonでのrange()の基本形のサンプルコードになります。

for i in range(反復回数):
	# 処理部分

第二引数、第三引数の指定オプションありのサンプルコードです。

for i in range(始値, 終値, ステップ値):
	# 処理部分

Pythonで使うrange()のポイント

  • 例のごとくiは0から始まるので5回だと4までになる
  • 第二引数にはrange(3,5)の様に範囲を指定できる
  • 範囲指定は同数で0回、(3,5)とした場合にiに入るのは3と4の2回
  • 反復範囲を指定した場合、iに入る数値も変化する
  • 第三引数にはステップ値を設定できるrange(2,10,2)など
  • ステップ値はiに反復処理毎に加算される数値
  • その反復での処理を抜ける場合はインデントありで「continue」
  • 完全に処理を抜ける場合はインデントありで「break」

簡単なrange文のサンプルコード

動作チェック用の一番シンプルなrange()のサンプルテストコードです。

range文で回数のみを指定した場合

for i in range(5):
	print(i)

# 0
# 1
# 2
# 3
# 4

range文で反復範囲を指定した場合

for i in range(3,5):
	print(i)

# 3
# 4

range文でステップを指定した場合

for i in range(0, 15, 3):
	print(i)

# 0
# 3
# 6
# 9
# 12

range文でcontinueを使ったサンプルコード

range()continueを使ってその反復を終わらせて次の反復処理を開始するサンプルコードになります。

for i in range(10):
	if i <= 4:
		continue
	print(i)

# 5
# 6
# 7
# 8
# 9

途中でiが5未満の場合にcontinueでそれ以降の処理をパスしているので、5以降しかprint()は読まれていません。

range文からbreakで処理を抜けるサンプルコード

range()内の処理をbreakを使って抜けるサンプルコードになります。

for i in range(10):
	print(i)
	if i >= 5:
		break

# 0
# 1
# 2
# 3
# 4
# 5

途中でiが5以上の場合にbreakで処理抜けしているので、6以降は反復していません。

continueやbreakの代わりにpassを記述した場合の挙動

continuebreakの代わりにpassを記述した場合の挙動をメモ。

for i in range(10):
	if i <= 4:
		pass
	print(i)

# 0
# 1
# 2
# 3
# 4
# 5
# 6
# 7
# 8
# 9

pass以降の処理も読み込まれました。