スクリプトを作成するときなどで数値が連続したリストを扱う場合がよくあります。range()を使えば簡単にそのようなリストを生成することができます。
range()で数列のリストを作成する
rangeの書式は以下の2つがあります。
1 |
range( 終了位置 ) |
1 |
range( 開始位置, 終了位置 [ , 間隔 ] ) |
range()は生成したリストを返します。
例えば、0〜9までの数列を作成したいときは以下のようになります。
1 |
print range(10) |
上のプログラムを実行すると以下のようなリストが生成されます。
1 |
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9] |
開始位置を指定したい場合は第1引数に開始する値、第2引数には終了する値を渡します。
1 |
print range(2, 10) |
上の例では、以下のように2〜9のリストが生成されます。
1 |
[2, 3, 4, 5, 6, 7, 8, 9] |
また、第3引数に値を渡すことによって、渡した値の間隔でリストを生成することができます。
1 |
print range(0, 100, 10) |
上の例では、0〜100までの値を10の間隔を空けてリストが生成されます。
1 |
[0, 10, 20, 30, 40, 50, 60, 70, 80, 90] |
for文を使って指定回数分ループさせる
range()はよくfor文と一緒に利用されます。range()を使うことで処理を行う回数を簡単に指定することができます。
1 2 3 4 5 |
sum = 0 for x in range(10): sum += x print sum |
上のプログラムでは0〜9の値が順々にxに代入されていき、10回ループ内のコードが実行されます。
1 |
55 |