Python: 乱数を取得する
Pythonで乱数を取得する場合はrandomモジュールの関数を利用します。
整数の乱数を取得する場合と、
浮動小数点数の乱数を取得する場合に分けて解説します。
整数の乱数
整数の乱数を取得する場合は、 randint()関数やrandrange()関数を使用します。
randint()
書式
random.randint(下限値, 上限値)
randint()は「下限値 <= N <= 上限値」の範囲のランダムな整数Nを返します。
「0以上、9以下」や「1以上、10以下」の乱数を取得する場合は次のように指定します。
# 0 - 9 randint(0, 9) # 1 - 10 randint(1, 10)
randrange()
書式
random.randrange(下限値, 上限値 + 1)
randrange()関数の場合、 2番目の引数に「上限値 + 1」を指定する必要があります。
「0以上、9以下」や「1以上、10以下」の乱数を取得する場合は次のように指定します。
import random # 0 - 9 randrange(10) # 1 - 10 randrange(1, 11)
上の例を見ると、randint(a, b)とrandrange(a, b + 1)が同じなのがわかります。
直感的でわかりやすいのはrandint()関数の方です。
浮動小数点の乱数
浮動小数点の乱数を取得する場合は、 random()関数やuniform()関数を使用します。
random()
書式
random.random()
random()関数では0.0から1.0までの浮動小数点の乱数を取得できます。
import random
for i in range(5):
num = random.random()
print(num)
# 実行結果
0.6471335147014281
0.47616744289649027
0.2913575753266705
0.5356048783250246
0.39651115332836784
uniform()
書式
random.uniform(a, b)
uniform(a, b)でa以上、b以下の浮動小数点の乱数を取得できます。
import random
for i in range(5):
num = random.uniform(1, 5) # 1以上 5以下
print(num)
# 実行結果
1.661517011064809
2.6776110958100903
4.022783632277454
1.2966983600593047
3.7979594988756507