Python

Python range()の使い方とサンプル

arage.com@gmail.com

Pythonのrange()関数は、整数の連続した範囲の値を生成するために使用されます。この記事では、range()関数の詳細な使用方法について説明します。

range関数の使用方法

range関数のパラメータ(start, stop, step)

range()関数は、3つのパラメータを受け取ることができます。

  1. start(省略可能)
    • シーケンスの開始値を指定します。デフォルトは0です。
  2. stop
    • シーケンスの終了値の次の値を指定します。この値自体はシーケンスに含まれません。
  3. step(省略可能)
    • 各要素間の増分を指定します。デフォルトは1です。

以下に、それぞれのパラメータの意味と使用方法を説明します。

start(省略可能)

startパラメータは、シーケンスの開始値を指定します。デフォルトでは0が使用されます。任意の整数を指定することができます。

例えば、start=5とすると、生成されるシーケンスの最初の値は5になります。

1for i in range(5, 10):
2    print(i)

出力:

5
6
7
8
9

stop

stopパラメータは、シーケンスの終了値の次の値を指定します。つまり、指定した値はシーケンスに含まれません。

例えば、stop=5とすると、生成されるシーケンスの最後の値は4になります。

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

出力:

0
1
2
3
4

step(省略可能)

stepパラメータは、各要素間の増分を指定します。デフォルトでは1が使用されます。

例えば、step=2とすると、生成されるシーケンスの要素は2ずつ増加します。

1for i in range(1, 10, 2):
2    print(i)

出力:

1
3
5
7
9

range関数の戻り値

range()関数は、指定された範囲の整数値を生成するイテレータを返します。このイテレータは、ここまでのサンプルコードのように、forループなどで使用することができます。

他にも直接リストに変換することも可能です。

1numbers = list(range(5))
2print(numbers) # [0, 1, 2, 3, 4]

range関数の注意点とトラブルシューティング

floatとの組み合わせ

range()関数は整数のシーケンスを生成するため、float値を使用することはできません。

1for i in range(0.5, 5.5):
2    print(i)

出力:

TypeError: 'float' object cannot be interpreted as an integer

start値がstop値よりも大きい場合

range()関数において、startパラメータの値がstopパラメータの値よりも大きい場合にはシーケンスは生成されず、空の結果になります。

stepパラメータに0を指定する場合

range()関数のstepパラメータに0を指定すると、エラーが発生します。

記事URLをコピーしました