for文の中でrange関数を使って指定した回数だけ繰り返し処理を行う
for 文ではイテラブルなオブジェクトから要素を 1 つずつ取り出して繰り返しを行いますが、 range関数を使用することで、簡単に指定した回数だけ繰り返し処理を行うことができます。
ここでは for 文で range 関数を使い指定回数繰り返しを行う方法について解説します。
range関数を使って指定した回数だけ繰り返し処理を行う
Python では繰り返し処理を行うために for 文が使用されますが、例えば 10 回繰り返すなど指定して回数だけ繰り返しを行いたい場合には range関数と組み合わせると便利です。
例えば次のように記述します。
for i in range(10):
実行する処理 1
実行する処理 2
range 関数は実際は range 型のコンストラクタで 0 から 引数に指定した数値を超えない値までの連続した数値を要素に持つオブジェクトを作成します。
例えば range(10) とした場合には 0 1 2 3 4 5 6 7 8 9 の 10 個の要素を持ちます。
for 文では要素を 1 つずつ取り出しながら繰り返し処理を行うので、結果として先ほどの for 文は 10 回繰り返されることになります。
同じようなことをリストオブジェクトを使って行う場合次のように記述することができます。
for i in [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]:
実行する処理 1
実行する処理 2
10 回であればまだこのように記述することも可能ですが、 100 回や 1000 回など繰り返す回数が多い場合には range 関数を使用すると便利です。
サンプルコード
次のサンプルを見てみましょう。
num = 1
for i in range(10):
old = num
num *= 2
print(str(old) + " * 2 = " + str(num))
>> 1 * 2 = 2
>> 2 * 2 = 4
>> 4 * 2 = 8
>> 8 * 2 = 16
>> 16 * 2 = 32
>> 32 * 2 = 64
>> 64 * 2 = 128
>> 128 * 2 = 256
>> 256 * 2 = 512
>> 512 * 2 = 1024
range 関数を使って繰り返し処理を 10 回行いました。
今回はfor文の中で range関数を使って指定した回数だけ繰り返し処理を行う方法について解説しました。