Python で乱数のリストを生成する
Najwa Riyaz
2023年1月30日
-
Python で
random.sample()
関数を使用してランダムな整数を生成する -
Python で
random.randint()
関数を使用してランダムな整数を生成する -
Python で
numpy.random.randint()
関数を使用してランダムな整数を生成する -
Python で
numpy.random.uniform()
関数を使用してランダムな浮動小数点数を生成する
この記事では、Python で乱数のリストを生成するために従うことができるさまざまな方法を紹介します。以下のリストを確認してください。
Python で random.sample()
関数を使用してランダムな整数を生成する
random.sample()
関数を使用して、Python で乱数を生成します。結果は、乱数を含む Python のリスト
です。以下のこの構文を確認してください。
random.sample(population_sequence, total_count_of_random_numbers)
生成される乱数の総数は total_count_of_random_numbers
です。以下のこの例を確認してください。
import random
random_numbers = random.sample(range(6), 3)
print(random_numbers)
type(random_numbers)
ここでは、0 から 6 までの範囲で 3つの数値が生成されます。
出力:
[3, 0, 1]
list
Python で random.randint()
関数を使用してランダムな整数を生成する
random.randint()
関数を使用してリスト内包表記を使用し、Python で乱数を生成します。結果は、乱数を含む Python リストです。構文は次のとおりです。
random_numbers = [random.randint( < min_value > , < min_value > ) for x in range(total_count_of_random_numbers)]
これが例です。
import random
random_numbers = [random.randint(0, 6) for x in range(3)]
print(random_numbers)
ここでは、0 から 6 までの範囲で 3つの数値が生成されます。
出力:
[1, 6, 6]
Python で numpy.random.randint()
関数を使用してランダムな整数を生成する
numpy.random.randint()
関数を使用して、ランダムな整数を生成します。結果は、乱数を含む Python リストです。このために、最初に NumPy
ライブラリをインポートします。この構文を使用できます。
np.random.randint(low=min_val, high=max_val, size=count).tolist()
このコードスニペットを例にとってみましょう。
import numpy as np
random_numbers = np.random.randint(low=0, high=6, size=3).tolist()
print(random_numbers)
ここでは、0 から 6 までの範囲で 3つの数値が生成されます。
出力:
[2, 4, 2]
Python で numpy.random.uniform()
関数を使用してランダムな浮動小数点数を生成する
numpy.random.uniform
を使用して、Python でランダムな浮動小数点数を生成します。
まず、NumPy
ライブラリをインポートして関数を利用します。構文は次のとおりです。
random.uniform(low=minvalue, high=maxvalue, size=count_of_numbers)
この例に従ってください。
import numpy
random_numbers = numpy.random.uniform(low=0, high=6, size=10).tolist()
print(random_numbers)
ここでは、0 から 6 までの数の範囲で 10 個の浮動小数点数が生成されます。
出力:
[0.3077335256902074,
4.305975943414238,
4.487914411717991,
1.141532770555624,
2.849062698503963,
3.7662017493968922,
2.822739788956107,
4.5291155985333065,
3.5138714366365296,
3.7069530642450745]