[Python]小数を含む範囲(Range)を生成するには?

python

どうも、ちょげ(@chogetarou)です。

小数を含む範囲を生成する方法を紹介します。

スポンサーリンク

方法

インターフェース, インターネット, プログラム, ブラウザ, Www

小数を含む範囲を生成する方法は、3つあります。

for文

1つ目は、for文を使う方法です。

まず、[]を記述します。

[]内でrange()をforループします。

そして、range()の値の桁数を下げます。(具体的には、10で割ったり、0.1を掛けたりする)

[x / 10 for x in range(start, end)]

上記の[]は、小数を含む範囲を生成します。

使用例

fl_range1 = [x / 10 for x in range(1, 10)]
fl_range2 = [x /100 for x in range(10, 20, 2)]

print(fl_range1) #[0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9]
print(fl_range2) #[0.1, 0.12, 0.14, 0.16, 0.18]

numpy.arange()

2つ目は、numpy.arange()を使う方法です。

まず、numpyからarange()を呼び出します。

第1引数に範囲の最初の位置、第2引数に範囲の最後の位置を指定します。

そして、arange()の第3引数に間隔を指定します。

np.arange(start, end, step)

np.arange()は、第1引数から第2引数までの範囲の値を第3引数の間隔で生成します。

使用例

import numpy as np

fl_range1 = np.arange(1, 2, 0.2)
fl_range2 = np.arange(2.0, 2.5, 0.1)

print(fl_range1) #[1.  1.2 1.4 1.6 1.8]
print(fl_range2) #[2.  2.1 2.2 2.3 2.4]

numpy.linspace()

3つ目は、numpy.linspace()を使う方法です。

まず、numpyからlinspace()を呼び出します。

numpy.linspace()の第1引数に最初の位置、第2引数に最後の位置を指定します。

そして、linspace()の第3引数に数値の個数を指定します。

np.linspace(start, end, count)

上記のnumpy.linspace()は、第1引数から第2引数までの範囲を生成します。

使用例

import numpy as np

fl_range1 = np.linspace(1, 2, 11)
fl_range2 = np.linspace(2, 2.5, 6)

print(fl_range1) #[1.  1.1 1.2 1.3 1.4 1.5 1.6 1.7 1.8 1.9 2. ]
print(fl_range2) #[2.  2.1 2.2 2.3 2.4 2.5]

まとめ

小数を含む範囲を生成する方法は、次の2つです。

  • for文を使う方法
  • numpy.arange()を使う方法
  • numpy.linspace()を使う方法

コメント

タイトルとURLをコピーしました